C#邮件发送类 简单实用 可自定义发件人名称
上图看效果
MailHelper:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | public class MailHelper { public bool SendMail(MailSender sender, out string errorMsg) { //声明一个Mail对象 MailMessage mymail = new MailMessage(); //发件人地址 //如是自己,在此输入自己的邮箱 mymail.From = new MailAddress(sender.SendAddress,sender.SendNickName,Encoding.UTF8); //收件人地址 mymail.To.Add( new MailAddress(sender.ReceiveAddress)); //邮件主题 mymail.Subject = sender.Title; //邮件标题编码 mymail.SubjectEncoding = Encoding.UTF8; //发送邮件的内容 mymail.Body = sender.Content; //邮件内容编码 mymail.BodyEncoding = Encoding.UTF8; //添加附件 foreach ( var attachment in sender.Attachments) { mymail.Attachments.Add(attachment); } //抄送到其他邮箱 foreach ( var str in sender.Cc) { mymail.CC.Add( new MailAddress(str)); } //是否是HTML邮件 mymail.IsBodyHtml = sender.IsBodyHtml; //邮件优先级 mymail.Priority = sender.MailPriority; //创建一个邮件服务器类 SmtpClient myclient = new SmtpClient(); myclient.Host = sender.Host; //SMTP服务端口 myclient.Port = sender.Port; //验证登录 myclient.Credentials = new NetworkCredential(sender.Username, sender.Password); //"@"输入有效的邮件名, "*"输入有效的密码 try { myclient.Send(mymail); errorMsg = "" ; return true ; } catch (Exception ex) { errorMsg = ex.Message; return false ; } } |
调用:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | MailSender sender= new MailSender(); sender.SendAddress = "***@***.com" ; sender.SendNickName = "辰晓晨" ; sender.ReceiveAddress = "***@***.com" ; sender.Host = "smtp.***.com" ; sender.Port = 25; sender.Username = "****@***.com" ; sender.Password = "******" ; sender.Title = "来自辰晓晨的邮件" ; sender.Content = "来自辰晓晨的邮件" ; sender.IsBodyHtml = false ; sender.MailPriority=MailPriority.Normal; MailHelper.MailHelper mailHelper = new MailHelper.MailHelper(); string errorMsg; if (mailHelper.SendMail(sender, out errorMsg)) { Console.WriteLine( "发送成功" ); } else { Console.WriteLine( "发送失败:" +errorMsg); } |
作者:晓晨Master(李志强)
出处:https://www.cnblogs.com/stulzq/p/5129509.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
目前学习.NET Core 最好的教程 .NET Core 官方教程 ASP.NET Core 官方教程
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律