邮件的发送是我们在程序中经常用到的一个功能,在MVC中实现该功能与在传统的WebForm中实现方法差不多,都是利用System.Net.Mail类来实现邮件的发送。
在利用该类发送邮件的时候,要确保我们用来发送邮件的邮箱开启SMTP服务,大部分邮箱默认都是支持该项的。
下面是发送邮件的示例代码:
//声明一个可以用SmtpClient发送的邮件
MailMessage mail = new MailMessage();
//设置邮件的主题
mail.Subject = "您有来自网站的新留言";
StringBuilder content = new StringBuilder();
content.Append("姓名:").Append(model.Name).Append("<br / >");
content.Append("邮箱:").Append(model.Email).Append("<br / >");
content.Append("手机:").Append(model.Mobile).Append("<br / >");
content.Append("信息:").Append(model.Content).Append("<br / >");
//设置邮件的内容
mail.Body = content.ToString();
//设置邮件内容的编码
mail.BodyEncoding = Encoding.UTF8;
//设置邮件是否为html格式
mail.IsBodyHtml = true;
//设置邮件的优先级
mail.Priority = MailPriority.High;
//声明一个用来发送邮件的帐号
MailAddress mailaddress = new MailAddress("发送邮件的帐号");
mail.From = mailaddress;
//声明一个用来接收邮件的帐号
MailAddress mailaddress_receive = new MailAddress("接收邮件的帐号");
//将接收邮件的帐号添加到收件人的地址集合,因为可以同时将一封邮件发送给多人,所以这里使用集合类型来存储收件人地址。
mail.To.Add(mailaddress_receive);
//声明一个简单邮件传输协议用来发送邮件
SmtpClient client = new SmtpClient();
//设置发件主机的SMTP服务器.比如163的SMTP服务器是:smtp.163.com,不同的主机有不同的SMTP服务器,需要我们到发件邮箱中查询。
client.Host = model_emailAccounts.SendAddress;
//设置SMTP事务的端口,这个也是要到发件邮箱中查询
client.Port = 25;
//设置发件邮箱账号的用户名和密码
client.Credentials = new NetworkCredential('用户名','密码');
//开始发送
client.Send(mail);
以上就是一个简单的邮件发送功能了,仅大家参考。