.net 之邮件发送帮助类 MailKit 的使用
1. nuget 安装 MailKit 的引用
源码: https://github.com/jstedfast/MimeKit
2.MailKitHelper 的具体代码如下,
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 | public class MailKitHelper { /// <summary> ///发送邮件 /// </summary> /// <param name="toAddressList">接收人</param> /// <param name="title">标题</param> /// <param name="content">内容</param> /// <param name="attachments">附件</param> /// <returns></returns> public static void SendMail(List<KeyValuePair< string , string >> toAddressList, string title, string content, List<KeyValuePair< string , byte []>> attachments = null ) { string server = ConfigurationCache.GetField< string >(ConfigurationCache.Email_SmtpServer); int port = ConfigurationCache.GetField< int >(ConfigurationCache.Email_SmtpPort); string account = ConfigurationCache.GetField< string >(ConfigurationCache.Email_FromAccount); string pwd = ConfigurationCache.GetField< string >(ConfigurationCache.Email_FromAccountPwd); var mailMessage = new MimeMessage(); var fromMailAddress = new MailboxAddress( "ScheduleMaster" , account); mailMessage.From.Add(fromMailAddress); var toMailAddress = toAddressList.Select(x => new MailboxAddress(x.Key, x.Value)); mailMessage.To.AddRange(toMailAddress); var bodyBuilder = new BodyBuilder() { HtmlBody = content }; if (attachments != null ) { foreach ( var item in attachments) { bodyBuilder.Attachments.Add(item.Key, item.Value); } } mailMessage.Body = bodyBuilder.ToMessageBody(); mailMessage.Subject = title; using ( var smtpClient = new MailKit.Net.Smtp.SmtpClient()) { smtpClient.Timeout = 10 * 1000; //设置超时时间 smtpClient.Connect(server, port, MailKit.Security.SecureSocketOptions.Auto); //连接到远程smtp服务器 smtpClient.Authenticate(account, pwd); smtpClient.Send(mailMessage); //发送邮件 smtpClient.Disconnect( true ); } } } |
3.常用的各大邮件服务端口号如下:
邮箱类型 | POP3服务器 | SMTP服务器 |
【QQ邮箱】 | pop.qq.com(端口:110) | smtp.qq.com(端口:25) |
【sina.com】 | pop3.sina.com.cn(端口:110) | smtp.sina.com.cn(端口:25) |
【sinaVIP】 | pop3.vip.sina.com (端口:110) | smtp.vip.sina.com (端口:25) |
【sohu.com】 | pop3.sohu.com(端口:110) | smtp.sohu.com(端口:25) |
【126邮箱】 | pop.126.com(端口:110) | smtp.126.com(端口:25) |
【139邮箱】 | POP.139.com(端口:110) | SMTP.139.com(端口:25) |
【163.com】 |
pop.163.com(端口:110) | smtp.163.com(端口:25) |
【QQ企业邮箱】 | pop.exmail.qq.com (SSL启用 端口:995) | smtp.exmail.qq.com(SSL启用 端口:587/465) |
【yahoo.com】 | pop.mail.yahoo.com | smtp.mail.yahoo.com |
【yahoo.com.cn】 | pop.mail.yahoo.com.cn(端口:995) | smtp.mail.yahoo.com.cn(端口:587) |
【HotMail】 | pop3.live.com(端口:995) | smtp.live.com(端口:587) |
【 Gmail】 | pop.gmail.com(SSL启用端口:995) | smtp.gmail.com(SSL启用 端口:587) |
【263.net】 | pop3.263.net(端口:110) | smtp.263.net(端口:25) |
【263.net.cn】 | pop.263.net.cn(端口:110) | smtp.263.net.cn(端口:25) |
【21cn.com】 | pop.21cn.com(端口:110 | smtp.21cn.com(端口:25) |
【Foxmail】 | POP.foxmail.com(端口:110) | SMTP.foxmail.com(端口:25) |
【china.com】 | pop.china.com(端口:110) | smtp.china.com(端口:25) |
【tom.com】 | pop.tom.com(端口:110) | smtp.tom.com(端口:25) |
分类:
.net 基础篇
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南