asp.net使用QQ邮箱发送邮件
首先进入QQ邮箱官网获取自己的授权码
在QQ邮箱最上面找到设置
点击设置之后找到账户
点击账户后找到POP3点击开启
然后验证信息
信息验证完成后就获得了自己的授权码
得到授权码后 就可以开始工作了
后台代码:
using System;
using System.Linq;
using System.Net.Mail;
using System.Text;
public static class MailHelper
{
private readonly static string SmtpServer = "smtp.qq.com";
private readonly static int SmtpServerPort = 25;
private readonly static bool SmtpEnableSsl = true;
private readonly static string SmtpUsername = "你申请授权码的邮箱";
private readonly static string SmtpDisplayName = "发送人的名字";
private readonly static string SmtpPassword = "你的授权码";
/// <summary>
/// 发送邮件到指定收件人
/// </summary>
/// <remarks>
/// 2013-11-18 18:55 Created By iceStone
/// </remarks>
/// <param name="to">收件人地址</param>
/// <param name="subject">主题</param>
/// <param name="mailBody">正文内容(支持HTML)</param>
/// <param name="copyTos">抄送地址列表</param>
/// <returns>是否发送成功</returns>
public static bool Send(string to, string subject, string mailBody, params string[] copyTos)
{
return Send(new[] { to }, subject, mailBody, copyTos, new string[] { }, MailPriority.Normal);
}
/// <summary>
/// 发送邮件到指定收件人
/// </summary>
/// <remarks>
/// 2013-11-18 18:55 Created By iceStone
/// </remarks>
/// <param name="tos">收件人地址列表</param>
/// <param name="subject">主题</param>
/// <param name="mailBody">正文内容(支持HTML)</param>
/// <param name="ccs">抄送地址列表</param>
/// <param name="bccs">密件抄送地址列表</param>
/// <param name="priority">此邮件的优先级</param>
/// <param name="attachments">附件列表</param>
/// <returns>是否发送成功</returns>
/// <exception cref="System.ArgumentNullException">attachments</exception>
public static bool Send(string[] tos, string subject, string mailBody, string[] ccs, string[] bccs, MailPriority priority, params Attachment[] attachments)
{
if (attachments == null) throw new ArgumentNullException("attachments");
if (tos.Length == 0) return false;
//创建Email实体
var message = new MailMessage();
message.From = new MailAddress(SmtpUsername, SmtpDisplayName);
message.Subject = subject;
message.Body = mailBody;
message.BodyEncoding = System.Text.Encoding.GetEncoding("GB2312");//正文编码
message.IsBodyHtml = false;
message.Priority = priority;
//插入附件
foreach (var attachment in attachments)
{
message.Attachments.Add(attachment);
}
//插入收件人地址,抄送地址和密件抄送地址
foreach (var to in tos.Where(c => !string.IsNullOrEmpty(c)))
{
message.To.Add(new MailAddress(to));
}
foreach (var cc in ccs.Where(c => !string.IsNullOrEmpty(c)))
{
message.CC.Add(new MailAddress(cc));
}
foreach (var bcc in bccs.Where(c => !string.IsNullOrEmpty(c)))
{
message.CC.Add(new MailAddress(bcc));
}
//创建SMTP客户端
var client = new SmtpClient
{
Host = SmtpServer,
Credentials = new System.Net.NetworkCredential(SmtpUsername, SmtpPassword),
DeliveryMethod = SmtpDeliveryMethod.Network,
EnableSsl = true,
Port = SmtpServerPort
};
//client.SendCompleted += Client_SendCompleted;
//try
//{
//发送邮件
client.Send(message);
//client.SendAsync(message,DateTime.Now.ToString());
//client.Dispose();
//message.Dispose();
return true;
//}
//catch (Exception)
//{
// throw;
//}
}
}
}
后台控制器代码:
MailHelper.Send("收件人邮箱","发送人名字","邮件的内容");
使用的时候只需要 将上面的绿色字体替换成自己的信息即可