作者:锋仔 | 来源:互联网 | 2023-06-07 05:12
小编给大家分享一下ASP.NET Core中怎么使用MialKit实现邮件发送功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
具体代码如下所示:
# 导包
首先我们需要导入 MailKit NuGet包,NuGet安装包命令在下方拓展介绍中。
# 引用命名空间
using MailKit.Net.Smtp;
using MimeKit;
# 邮件发送帮助类
///
/// 发送邮件
///
/// 发件人名字
/// 接收邮箱
/// 发送邮箱
/// 邮箱密码
/// 邮箱主机
/// 邮箱端口
/// 邮件主题
/// 邮件内容
///
public async Task 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 OAuth3 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实现邮件发送功能”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程笔记行业资讯频道!