浅谈 MVC3 WebMail 发送邮件

有时项目要用到邮箱验证就要发送邮件传统的解决方案:

public void SendResetPasswordEmail(string email) {

  MailAddress from = new MailAddress("XXX@126.com", "Mercury"); //填写电子邮件地址,和显示名称

  MailAddress to = new MailAddress(email, email); //填写邮件的收件人地址和名称

  //设置好发送地址,和接收地址,接收地址可以是多个

  MailMessage mail = new MailMessage(); 

  mail.From = from;

  mail.To.Add(to);

  mail.Subject = “主题内容”;

  mail.Body = "你好";

  mail.IsBodyHtml = true;//设置显示htmls

  //设置好发送邮件服务地址

  SmtpClient client = new SmtpClient();

  client.Host = "smtp.126.com";

  //填写服务器地址相关的用户名和密码信息

  client.Credentials = new System.Net.NetworkCredential("Service", "123456");

  //发送邮件

      client.Send(mail);

//上述的就是传统的方式,MVC3它的发送方式也大同小异,我们来看一下吧

【1】、 配置邮件发送的参数

//发送电子邮件的SMTP的服务器名称

WebMail.SmtpServer = "smtp.gmail.com";

//发送端口

 WebMail.SmtpPort = 25;

//启用SSL(GMAIL需要),其他的都不需要

WebMail.EnableSsl = true;

//-----------配置 

 //账户名 

 WebMail.UserName = "hedywqy"; 

 //邮箱名

WebMail.From = "*****@gmail.com"; 

 //密码

WebMail.Password = "*****";

 //设置默认配置

WebMail.SmtpUseDefaultCredentials = true;

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

【2、发送邮件】

 WebMail.Send(

 to: xxxx@qq.com, //指定地址

subject: "测试标题1", //标题

 body: "天天开心" //内容

//cc: "抄送",

//filesToAttach: null,

//isBodyHtml: true,

//additionalHeaders: new string[] { "aaa", "bbb" }

);

总结发现使用Gmail服务器,会发送的速度会很慢大概要10S左右,所以推荐用126、163等会速度快些,我自己测试用163只用1S就接收到了。。

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

下面是一些参数配置的解析:

邮件头或部分

Property

附件

Attachments

密件抄送 (BCC)

Bcc

抄送 (CC)

CC

内容类型

BodyEncoding

自定义标头的编码

HeadersEncoding

邮件正文

Body

优先级别

Priority

收件人

To

Reply-To

ReplyToList

发件人

From

主题

Subject

部分是.NET 4.0 完整的使用。想要更多的控制权可以自己使用下面的类。

SmtpClient 类用于将电子邮件发送到 SMTP 服务器以便传递。下表中显示的类用于构造可以使用 SmtpClient 发送的电子邮件。

说明

Attachment

表示文件附件。此类允许您将文件、流或文本附加到电子邮件中。

MailAddress

表示发件人和收件人的电子邮件地址。

MailMessage

表示电子邮件。

posted on 2011-07-12 20:44  水星曙光  阅读(1297)  评论(0编辑  收藏  举报