MvcMailer是一个有趣的组件,您可以使用ASP.NET MVC框架在发送邮件。很重要的是,它使用Razor视图引擎的观点作为电子邮件模板和很容易安装和使用。
在本文中你将看到如何安装,设置邮件模板和发送邮件。
我们先看一下传统的邮件发送。

StringBuilder mailBody = new StringBuilder();

mailBody.Append("<html><head><style type=\"text\css\">...</style></head>");

mailBody.Append("<body>")

mailBody.AppendFormat("Hi {0}

", user.FirstName);

...

... XX lines of similar Appending unless it its done!

...

mailBody.Append("</body></html>");
这样大多时候很糟糕。

这时我们再来看:MvcMailer是如何发送邮件的。
1》使用NuGet包进行安装

2》打开你的Web.config文件修改mailSettings节点下的配置

上面是进行,主机,端口,用户户名,密码,的设置,下面画圈是是:你发送一封邮件之后,把邮件进行保存。

3》引入电子邮件模板 : Scaffold Mailer UserMailer Welcome,GoodBye

然后你的程序你多了这几个文件夹

然后扩展邮件文件夹iusermailer接口和usermailer是对:PasswordReset,Welcome,GoodBye 邮件模板的实现。
4》我们通过一个Example来看下如何实现邮件发送。

首先实现:IUserMailer

public ActionResult Index()
{
Mailer.Welcome().Send();
return View();
}

Mailer.Welcome().Send();表示:对Welcome模板的类容进行send;

我们来看一下 Welcome模板:

如果发送图片的话一定是绝对路径:才行
现在来看一下他的母板页:

----------------------------------------------------------------

我们转到UserMailer的实现:看他怎么实现Welcome模板的

我往126邮箱发了一封邮件:我们开看一下吧:

还有这些模板:PM> Scaffold Mailer.Razor UserMailer Welcome,PasswordReset,CommentMailer CommentPosted,Liked
好了已经收到了!

如果你的Google Email ,你还要设置一下:
   

MvcMailer通过ASP.NET MVC Razor视图和基架发送邮件的更多相关文章

  1. Asp.net MVC Razor视图模版动态渲染PDF,Razor模版生成静态Html

    Asp.net MVC Razor视图模版动态渲染PDF,Razor模版生成静态Html 1.前言 上一篇文章我开源了轮子,Asp.net Core 3.1 Razor视图模版动态渲染PDF,然后,很 ...

  2. ASP.NET MVC Razor视图引擎攻略

    --引子 看下面一段MVC 2.0的代码. <%if (Model != null){%> <p><%=Model%></p><%}%>&l ...

  3. ASP.NET Mvc Razor视图语法

    在ASP.NET MVC中有两套模版引擎,一套是ASPX,一套是Razor,从事过WebForms开发的朋友们,对于ASPX模版已经很熟悉了,下面我说一下我所熟悉的Razor模版引擎的一些语法,供大家 ...

  4. ASP.NET MVC——Razor视图引擎

    Razor是MVC框架视图引擎,我们今天就来说一说Razor视图引擎. 首先还是来创建一个基础项目叫Razor来演示. 先来定义一个Model叫Product public class Product ...

  5. ASP.NET MVC Razor视图(2)

    昨天介绍了一些Razor的基本语法,几天接着向下说: 补成一个,上次介绍了怎么输出原样的文本,用<text></text>标签,下面再介绍一种语法: @{@:我爱北京}  这个 ...

  6. Asp.Net MVC Razor视图引擎与My97DatePicker插件的结合

    using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using System. ...

  7. 体验 ASP.NET Core 1.1 中预编译 MVC Razor 视图

    这是从 ASP.NET Core 1.1 官方发布博文中学到的一招,可以在 dontet publish 时将 Razor 视图编译为 .dll 文件. 需要在 project.json 中添加如下配 ...

  8. ASP.NET MVC 5 - 视图

    在本节中,你要去修改HelloWorldController类,使用视图模板文件,在干净利索地封装的过程中:客户端浏览器生成HTML. 您将创建一个视图模板文件,其中使用了ASP.NET MVC 3所 ...

  9. ASP.NET MVC Razor语法

    ASP.NET MVC Razor语法 (一) 关于_ViewStart.cshtml文件     使用Razor模板引擎的话,会自动生成一个_ViewStart.cshtml文件.事实上,_View ...

随机推荐

  1. 重新想象 Windows 8 Store Apps (1) - 控件之文本控件: TextBlock, TextBox, PasswordBox, RichEditBox, RichTextBlock, RichTextBlockOverflow

    原文:重新想象 Windows 8 Store Apps (1) - 控件之文本控件: TextBlock, TextBox, PasswordBox, RichEditBox, RichTextBl ...

  2. fedora linux平台下搭建lighttpd+php+sqlite

    (一)lighttpd 1. 安装 yum install lighttpd 安装完毕后,系统中应该多了一个用户lighttpd和组lighttpd.这个用户,默认是不同意登陆的. 我们改动/etc/ ...

  3. UIScrollViewA都PI得知。

    //1.设定滚定条的样式 typedef NS_ENUM(NSInteger, UIScrollViewIndicatorStyle) { UIScrollViewIndicatorStyleDefa ...

  4. 重写ViewPager实施单一交有关切换到这个问题,并没有缓存

    我们需要解决这个问题:切换时,可以实现单独的消息到左和右,但我不知道的情况下根据岗位总数.只是不知道ViewPagerAdapter的getCount数量. 因为帖子内容的数据图片和布局比較复杂.所以 ...

  5. Unity3D方法来隐藏和显示对象

    Unity3D作 在使用unity3d开发游戏的过程中.我们经常会遇到须要隐藏或者显示的操作,针对这一点,以下做了一些总结. 一.设置Renderer状态 在游戏的开发中,全部可以被渲染的物体都包括有 ...

  6. 在JBuilder8在使用ANT

    在JBuilder8中使用ANT                                                            作者:翁驰原    在JBuilder8中.Ap ...

  7. gerrit git使用

    有关git的參考资料 pro git中文版, 最好的git书籍 http://git-scm.com/book/zh 图解git http://marklodato.github.com/visual ...

  8. c# winform 引用sqlite.dll 运行报错解决方法

    错误信息 :  未能加载文件或程序集“System.Data.SQLite, Version=1.0.81.0, Culture=neutral, PublicKeyToken=db937bc2d44 ...

  9. Oracle 初始化参数文件pfile和spfile

    pfile和spfile差额 pfile :Oracle 9i之前.ORACLE使用我们一直PFILE存储的初始化参数,,能够在操作系统级别改动. 当spfile文件改动出现错误导致oracle无法启 ...

  10. hdu4888 Redraw Beautiful Drawings

    14更多学校的第二个问题 网络流量   分别以行,列作为结点建图 i行表示的结点到j列表示的结点的流量便是(i, j)的值 跑遍最大流   若满流了便是有解   推断是否unique  就是在残余网络 ...