准备将一些项目迁移到 asp.net core 先从封装类库入手,在遇到邮件发送类时发现在 asp.net core 1.0中并示提供SMTP相关类库,于是网上一搜发现了MailKit

好东西一定要试一下,何况是开源,下面是代码可实现SMTP邮件发送:

using MailKit.Net.Smtp;
using MailKit.Security;
using MimeKit;
using System.Threading.Tasks; namespace ConsoleApp1
{
public class MailHelper
{
public static void Send(string email, string subject, string message)
{
var emailMessage = new MimeMessage();
emailMessage.From.Add(new MailboxAddress("tianwei blogs", "mail@hantianwei.cn"));
emailMessage.To.Add(new MailboxAddress("mail", email));
emailMessage.Subject = subject;
emailMessage.Body = new TextPart("plain") { Text = message }; using (var client = new SmtpClient())
{
client.Connect("smtp.hantianwei.cn", , true);
client.Authenticate("mail@hantianwei.cn", "******"); client.Send(emailMessage);
client.Disconnect(true); }
} public static async Task SendEmailAsync(string email, string subject, string message)
{
var emailMessage = new MimeMessage(); emailMessage.From.Add(new MailboxAddress("tianwei blogs", "mail@hantianwei.cn"));
emailMessage.To.Add(new MailboxAddress("mail", email));
emailMessage.Subject = subject;
emailMessage.Body = new TextPart("plain") { Text = message }; using (var client = new SmtpClient())
{
await client.ConnectAsync("smtp.hantianwei.cn", , SecureSocketOptions.None).ConfigureAwait(false);
await client.AuthenticateAsync("mail@hantianwei.cn", "******");
await client.SendAsync(emailMessage).ConfigureAwait(false);
await client.DisconnectAsync(true).ConfigureAwait(false); }
} }
}

以上代码同步异步都没有问题

注:一般邮箱如腾讯企业邮、163等都可以发送成功,但阿里云邮件推送失败,如果有高手可实现阿里云推送邮件请告诉我一下,非常感谢!

最新文章

  1. MVC 知识点学习2
  2. Sphinx的配置和使用
  3. 【原】常见CSS3属性对ios&android&winphone的支持
  4. 牡丹江.2014B(图论,树的直径)
  5. python语言switch-case
  6. 老外还是喜欢Ubuntu的
  7. 配置caffe的python环境时make pycaffe提示fatal error: numpy/arrayobject.h No such file or directory解决方法
  8. linux内核参数优化
  9. Model&Animation
  10. ASP.NET 经典60道面试题
  11. Swift构造器重载
  12. HAOI2007反素数
  13. C++中 auto自己主动变量,命名空间,using作用以及作用域
  14. python-day2数据类型
  15. JavaScript编程(终极篇)
  16. HTTP与HTTPS对访问速度(性能)的影响【转】
  17. 使用block的好处
  18. 如何解决abd.exe已停止工作
  19. 十三个有彩蛋的Linux命令
  20. 升级Xcode10报错问题修复

热门文章

  1. java和Discuz论坛实现单点登录,通过Ucenter(用户管理中心)
  2. slick-pg v0.1.5 发布
  3. 做梦想起来的C#简单实现贪吃蛇程序(LinQ + Entity)
  4. AutoMapper中的Map和DynamicMap——高手注重细节,思考和总结
  5. 移植到Windows CE 的经验
  6. Kali Linux系列教程之OpenVas安装
  7. servlet servlet请求与响应
  8. iOS Runtime原理及使用
  9. Unity中的协程是什么?
  10. photoshop 快速切图