邮件发送功能在OA以及一些网站验证中很常用。下面是邮件发送的一个函数,参数传入收件人地址,邮件主题,邮件内容,读者可根据自己的需求添加邮件的附件或者抄送人等。
/// <summary>
/// 发送邮件
/// </summary>
/// <param name="mailTo">要发送的邮箱</param>
/// <param name="mailSubject">邮箱主题</param>
/// <param name="mailContent">邮箱内容</param>
/// <returns>返回发送邮箱的结果</returns>
public static bool SendEmail(string mailTo, string mailSubject, string mailContent)
{
// 设置发送方的邮件信息,例如使用网易的smtp
string smtpServer = System.Configuration.ConfigurationManager.AppSettings["smtpServer"]; //SMTP服务器
string smtpMail = System.Configuration.ConfigurationManager.AppSettings["smtpMail"]; ; //登陆用户名
string userPassword = System.Configuration.ConfigurationManager.AppSettings["smtpPassword"]; ;//登陆密码
// 邮件服务设置
SmtpClient smtpClient = new SmtpClient();
smtpClient.Port = 2525;
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定电子邮件发送方式
smtpClient.Host = smtpServer; //指定SMTP服务器
//smtpClient.Credentials = new System.Net.NetworkCredential(mailFrom, userPassword,"ZT158");//用户名和密码
var Cred = new System.Net.NetworkCredential(smtpMail, userPassword);
Cred.Domain = "ZT158";
smtpClient.Credentials = Cred;
// 发送邮件设置
MailMessage mailMessage = new MailMessage(smtpMail, mailTo); // 发送人和收件人
mailMessage.Subject = mailSubject;//主题
mailMessage.Body = mailContent;//内容
mailMessage.BodyEncoding = Encoding.UTF8;//正文编码
mailMessage.IsBodyHtml = true;//设置为HTML格式
mailMessage.Priority = MailPriority.Low;//优先级
try
{
smtpClient.Send(mailMessage); // 发送邮件
return true;
}
catch (SmtpException ex)
{
NLog.LogManager.GetLogger("SendEmail").Error(ex);
return false;
}
}
}