.net中经常会用到发送邮件,常用的功能有用户注册通知、修改密码通知等,在这里把.net发送邮件封装成一个类分享给大家。
/// <summary>
/// 发送邮件
/// </summary>
/// <param name="FromEamil">发件人邮箱</param>
/// <param name="EamilPwd">发件人邮箱密码</param>
/// <param name="ToEmail">收件人邮箱</param>
/// <param name="EmailTitle">邮箱标题</param>
/// <param name="EmailContent">邮箱内容</param>
/// <param name="EamilSmtp">SMTP主机的名称或IP地址,例如:smtp.163.com</param>
/// <returns>返回Success或Fail</returns>
public static SendMailStatus SendEamil(string FromEamil, string EamilPwd, string ToEmail, string EmailTitle, string EmailContent, string EamilSmtp)
{
MailMessage mm = new MailMessage();
//发件人
mm.From = new MailAddress(FromEamil, FromEamil);
//收件人(可以是多个)
mm.To.Add(new MailAddress(ToEmail));
//主题
mm.Subject = EmailTitle;
//邮件正文
mm.Body = EmailContent;
SmtpClient sc = new SmtpClient();
//设置SMTP主机的名称或IP地址
sc.Host = EamilSmtp;
string User = FromEamil;
string PassWord = EamilPwd;
//设置用于验证发件人身份的凭据
sc.Credentials = new System.Net.NetworkCredential(User, PassWord);
try
{
sc.Send(mm);
return SendMailStatus.Success;
}
catch (Exception)
{
return SendMailStatus.Fail;
}
}
返回枚举结果:
public enum SendMailStatus { Success, Fail }
这样用到发送邮件的时候直接调用SendEamil方法就可以,现在有个问题是邮件有时候会出现在垃圾箱,不知道有什么更好的方法解决。
更多.net技术就在:http://bbs.netluntan.com,群:121058751
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。