提起邮件服务,最先以前通常自建邮件服务器,须要硬软件和运维的支持,稳定性也难保证,随着云服务的普及邮件推送功能的服务化是趋势,也省钱省事省心。html
最先开始用过搜狐邮件服务,阿里云生态如今基本都出现了,咱们来尝试一下阿里云的邮件推送服务:服务器
首先在阿里云邮件推送控制台添加域名,而后在本身的dns服务器中添加以下的解析(根据控制台中的“配置”):运维
v=spf1 include:spf1.dm.aliyun.com -all
的TXT记录,用于防止被看成垃圾邮件在mac上能够经过nslookup -query=TXT 域名
与nslookup -query=MX 域名
命令查看DNS设置是否生效。测试
接着在阿里云控制台验证一下域名,验证成功以后,添加一下发信地址(发件地址),并设置一下SMTP密码。阿里云
而后经过下面的C#代码使用阿里云邮件推送服务的SMTP就能够发送邮件了。spa
MailMessage mailMsg = new MailMessage(); mailMsg.To.Add(new MailAddress(" 收件人地址")); mailMsg.From = new MailAddress("控制台建立的发信地址", "显示名称"); // 邮件主题 mailMsg.Subject = "测试邮件主题"; // 邮件正文内容 string text = "这是一封经过阿里云邮件服务发送的邮件"; string html = @"欢迎使用<a href=""https://dm.console.aliyun.com"">邮件推送</a>"; mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(text, null, MediaTypeNames.Text.Plain)); mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, null, MediaTypeNames.Text.Html)); // 添加附件 string file = "D:\\1.bak"; Attachment data = new Attachment(file, MediaTypeNames.Application.Octet); mailMsg.Attachments.Add(data); //邮件推送的SMTP地址和端口 SmtpClient smtpClient = new SmtpClient("smtpdm.aliyun.com", 25); // 使用SMTP用户名和密码进行验证 System.Net.NetworkCredential credentials = new System.Net.NetworkCredential("控制台建立的发信地址", "SMTP密码"); smtpClient.Credentials = credentials; smtpClient.Send(mailMsg);
最终相信阿里云的稳定性,且价格是至关的便宜,还有天天200封的免费量,哈哈!code