Asp.Net MVC 邮件发送

最近一段时间因项目需要,弄了个邮件发送的功能,查了网上说的关于邮件发送的内容,均跟自己的期望不一致,经过几天的研究,最终问题得以解决,废话不多说,直接上代码,

Controller里的代码:

public ActionResult SendPassEmail()
{

MailAddress mailfrom = new MailAddress(SendEmailInfo.m_Email, SendEmailInfo.m_EmailUser, System.Text.Encoding.UTF8);//发件人邮箱地址,名称,编码UTF8
MailAddress mailto = new MailAddress(item.Email, item.r_EmailUser, System.Text.Encoding.UTF8);//收件人邮箱地址,名称,编码UTF8
MailMessage mail = new MailMessage(mailfrom, mailto);
mail.BodyEncoding = System.Text.Encoding.UTF8;
mail.SubjectEncoding = System.Text.Encoding.UTF8;
mail.HeadersEncoding = System.Text.Encoding.UTF8;
mail.IsBodyHtml = true;
mail.Body = string.Format(@"
<p>{0}:</p>
<p style='text-indent:2em'>。</p>
<p style='text-indent:2em'> </p>
<p>XXX</p>
<p>XXX</p>
<p>{1}</p>", item.r_EmailUser, DateTime.Now.ToString("yyyy-MM-dd"));//发送邮件的内容
mail.Subject = "XXX";//发送邮件的标题
using (SmtpClient client = new SmtpClient())
{
client.Host = SendEmailInfo.m_EmailSmtp;
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential(SendEmailInfo.m_Email, SendEmailInfo.m_EmailPassword);
try
{
client.Send(mail);
}
catch (Exception ex)
{
logger.Debug(ex.Message);
}
mail.Dispose();
}

return Content("");
}

另外,还要根据发件的邮箱,进行相关服务的配置,这里不多说了。

经过测试,可以正常发送邮件。

至此,邮件发送功能完成。

posted @ 2018-02-07 15:41  smallduo  阅读(163)  评论(0编辑  收藏  举报