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. VMware vSphere 服务器虚拟化之十七 桌面虚拟化之安装View链接服务器

    VMware vSphere 服务器虚拟化之十七 桌面虚拟化之安装View链接服务器 View链接服务器(View Connection Server)是Vmware Horizon View桌面虚拟 ...

  2. 重新想象 Windows 8 Store Apps (3) - 控件之内容控件: ToolTip, Frame, AppBar, ContentControl, ContentPresenter; 容器控件: Border, Viewbox, Popup

    原文:重新想象 Windows 8 Store Apps (3) - 控件之内容控件: ToolTip, Frame, AppBar, ContentControl, ContentPresenter ...

  3. 移植kl档,但调用默认Generic.kl解决的方法

    从飞机到现在移植模型来开发遥控器按键,调查发现,大部分的功能键始终没有任何效果. 跑 dumpsys input 要查看当前的关键kl, 查找KeyLayoutFile它原来是默认Generic.kl ...

  4. ffmpeg架构和解码流程分析

    转 一,ffmpeg架构 1. 简介 FFmpeg是一个集录制.转换.音/视频编码解码功能为一体的完整的开源解决方案.FFmpeg的 开发是基于Linux操作系统,但是可以在大多数操作系统中编译和使用 ...

  5. 【转】QT样式表 (QStyleSheet)

    作者:刘旭晖 Raymond 转载请注明出处Email:colorant@163.comBLOG:http://blog.csdn.net/colorant/ 除了子类化Style类,使用QT样式表( ...

  6. hdu 4308 Saving Princess claire_ BFS

    为了准备算法考试刷的,想明确一点即可,全部的传送门相当于一个点,当遇到一个传送门的时候,把全部的传送门都压入队列进行搜索 贴代码: #include <iostream> #include ...

  7. unity调用安卓打包apk时的错误unable to convert classes into dex format

    出现这种问题一般是由于有重复的文件所致,看下unity报的错误那些文件重复了,把重复的文件删了即可 例如,将eclipse中的安卓工程bin\class导出jar包时,会将下面的.class文件打包, ...

  8. Alamofire网络库基础教程

    原文 Beginning Alamofire Tutorial 原文作者 Essan Parto译者 星夜暮晨(QQ:412027805) http://www.jianshu.com/p/f1208 ...

  9. POST和Get辨析

    在Form里面,能够使用post也能够使用get.它们都是method的合法取值,可是两者也有不同,主要差别在于传递和获取參数的方式不同 一.Get方法: 1.參数的传递方式: 通过URL请求来传递用 ...

  10. 在Sql中使用Try Catch

    原文:在Sql中使用Try Catch 今天在写sql中出现了!我想在sql使用trycatch吧! 哎..但是语法又记不住了! 那就清楚我们的google大师吧! 嘿,网上关于在sql中使用Try ...