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. 源码安装apache及配置转发

    一.    安装Apache a)    解压:tar -xvf httpd-*; b)    ./configure --prefix=/usr/oracle/apache CC="gcc ...

  2. Windows Phone 8 - Runtime Location API - 1

    原文:Windows Phone 8 - Runtime Location API - 1 在Windows Phone里要做Background Service的方式,除了Background Ag ...

  3. Android Volley 之自定义Request

    转载标明出处:http://blog.csdn.net/lmj623565791/article/details/24589837 今天群里一哥们需要自定义Volley的Request的例子,于是产生 ...

  4. Android动画之二:View Animation

    作为一个博客<Android其中的动画:Drawable Animation>.android动画主要分为三大部分.上一篇博客已经解说Drawable Animation的使用方法,即逐帧 ...

  5. 乐在其中设计模式(C#) - 状态模式(State Pattern)

    原文:乐在其中设计模式(C#) - 状态模式(State Pattern) [索引页][源码下载] 乐在其中设计模式(C#) - 状态模式(State Pattern) 作者:webabcd 介绍 允 ...

  6. IBatis.Net获取执行的Sql语句

    前言 IBatis.Net中Sql语句是些在配置文件中的,而且配置文件是在程序启动时读取的(我们开发的时候需要将其设置成较新复制或者是始终复制),而不是程序将其包含在其中(例如NHibernate的映 ...

  7. VMware workstation 10.0的永久key

    MA491-6NL5Q-AZAM0-ZH0N2-AAJ5A5A6F6-88247-XZH59-HL0Q6-8CD2VHF6QX-20187-2Z391-522NH-9AELT5F29M-48312-8 ...

  8. 最快的方法来清除Chrome浏览器DNS高速缓存

    最快的方法是直接数据url.那么不需要清除dns高速缓存. chrome://net-internals/#dns 一般步骤,要经过下列几项. Chrome - > 扳手 - > 选项 - ...

  9. Java网络编程注意事项3

    如何使用POST请求和GET请求Web网站发送请求,下面的参考代码: import java.io.BufferedReader; import java.io.InputStream; import ...

  10. Error opening zip file or JAR manifest missing : D:\play-1.2.5/framework/play-1.2.5.jar

    play框架写的项目,在eclipse中导入.build-path中全部jar包都加入.执行程序,出现: Error occurred during initialization of VM agen ...