前言
这几天做的收费系统需要邮箱找回密码!这里做一下分享。实现方法有许多中,本博客主要分享本地服务器发送的方法。
方法
using System.Net;
using System.Net.Mail;
/// <summary>
/// 邮件发送验证码
/// </summary>
public void SendMail()
{
System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient();
client.Host = "smtp.163.com";//使用163的SMTP服务器发送邮件
client.UseDefaultCredentials = true;
client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
client.Credentials = new System.Net.NetworkCredential("157****1797@163.com", "0713yj");//163的SMTP服务器需要用163邮箱的用户名和密码作认证
System.Net.Mail.MailMessage Message = new System.Net.Mail.MailMessage();
Message.From = new System.Net.Mail.MailAddress("157****1797@163.com", "天天见网咖客服", System.Text.Encoding.UTF8);//这里需要注意,163似乎有规定发信人的邮箱地址必须是163的,而且发信人的邮箱用户名必须和上面SMTP服务器认证时的用户名相同
//因为上面用的用户名abc作SMTP服务器认证,所以这里发信人的邮箱地址也应该写为abc@163.com
//Message.To.Add("123456@gmail.com");//将邮件发送给Gmail
Message.To.Add(txtEmail.Text.Trim());//将邮件发送给QQ邮箱
Message.Subject = "找回密码";//邮件标题
Message.Body = "您好!" + systemVarify + "是您校验身份的验证码,用于找回登陆密码。";//邮件内容
Message.SubjectEncoding = System.Text.Encoding.UTF8;
Message.BodyEncoding = System.Text.Encoding.UTF8;
Message.Priority = System.Net.Mail.MailPriority.High;
Message.IsBodyHtml = true;
client.Send(Message);
}
结语
这里的发件人邮箱密码以及发件内容都可以写到配置文件里,有关修改和添加配置文件的方法请跳转:【C#】配置文件读取与修改