文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

ASP.NET Core中使用MialKit实现邮件发送功能

2022-06-07 20:58

关注

具体代码如下所示:


# 导包
  首先我们需要导入 MailKit NuGet包,NuGet安装包命令在下方拓展介绍中。
# 引用命名空间
using MailKit.Net.Smtp;
using MimeKit;
# 邮件发送帮助类
  /// <summary>
  /// 发送邮件
  /// </summary>
  /// <param name="Name">发件人名字</param>
  /// <param name="receive">接收邮箱</param>
  /// <param name="sender">发送邮箱</param>
  /// <param name="password">邮箱密码</param>
  /// <param name="host">邮箱主机</param>
  /// <param name="port">邮箱端口</param>
  /// <param name="subject">邮件主题</param>
  /// <param name="body">邮件内容</param>
  /// <returns></returns>
  public async Task<bool> SendMailAsync(string Name, string receive, string sender, string password, string host, int port, string subject, string body)
  {
   try
   {
          # MimeMessage代表一封电子邮件的对象
    var message = new MimeMessage();
          # 添加发件人地址 Name 发件人名字 sender 发件人邮箱
    message.From.Add(new MailboxAddress(Name, sender));
          # 添加收件人地址
    message.To.Add(new MailboxAddress("", receive));
          # 设置邮件主题信息
    message.Subject = subject;
          # 设置邮件内容
    var bodyBuilder = new BodyBuilder() { HtmlBody = body };
    message.Body = bodyBuilder.ToMessageBody();
    using (var client = new SmtpClient())
    {
     // For demo-purposes, accept all SSL certificates (in case the server supports STARTTLS)
     client.ServerCertificateValidationCallback = (s, c, h, e) => true;
     // Note: since we don't have an OAuth2 token, disable 
     // the XOAUTH2 authentication mechanism. 
     client.AuthenticationMechanisms.Remove("XOAUTH2");
     client.CheckCertificateRevocation = false;
     //client.SslProtocols = System.Security.Authentication.SslProtocols.Tls12;
     client.Connect(host, port, MailKit.Security.SecureSocketOptions.Auto);
     // Note: only needed if the SMTP server requires authentication
     client.Authenticate(sender, password);
     await client.SendAsync(message);
     client.Disconnect(true);
     return true;
    }
   }
   catch (Exception ex)
   {
   }
   return false;
  }

 借助这一个简单的邮件发送类我们就可以已经可以实现邮件发送功能了。

# 拓展(NuGet常用命令) 

1、安装指定版本:install-package <程序包名> -version <版本号>

2、更新包:Update-Package <程序包名>

3、重新安装所有Nuget包(整个解决方案都会重新安装)

  update-package -reinstall

4、重新安装指定项目所有Nuget包

  update-package -project <项目名称> -reinstall

5、正常卸载:uninstall-package <程序包名>

6、强制卸载:Uninstall-Package <程序包名> -Force

总结

以上所述是小编给大家介绍的ASP.NET Core中使用MialKit实现邮件发送功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程网网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

您可能感兴趣的文章:ASP.NET Core 1.0实现邮件发送功能ASP.NET邮件发送system.Net.Mail案例asp.net2.0实现邮件发送(测试成功)用ASP.NET做的个性化的邮件发送系统


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯