概述
问题简述
在最近Web高级编程课上的项目中,有这么个要求,需要注册后发送邮件到客户注册的邮箱中。因此需要在ASP.NET中使用邮件发送。
老师给出的方法是用ASP自带的SmtpClient进行,但查询资料后发现官方已经不支持并且钦定推荐使用MailKit,详情点击我
使用方式
在Nuget中使用Install-package MailKit 安装
代码Demo
public void SendEmail(string email,string title,MimePart content)
{
//采用MailKit替代SmtpClient原因是官方已经放弃了这个库的维护与更新,同时这个已经不再支持新协议和存在一定的安全隐患。
MimeMessage message = new MimeMessage();
message.From.Add(new MailboxAddress(settings.MailFromAddress));
message.To.Add(new MailboxAddress(email));
message.Subject = title;
message.Body = content;
using (var client = new SmtpClient())
{
client.Connect(settings.ServerName, settings.ServerPort, SecureSocketOptions.Auto);//设置邮件发送
client.Authenticate(settings.Username, settings.Password);//对应QQ邮箱中的用户名和授权码
client.Send(message);
client.Disconnect(true);
}
}
MimePart的用法
其实MimePart是TextPart的父类,由于为了支持多种类型的使用,所以这里获得是采用MimePart
TextPart演示如下:
string title = reader.Name + ",欢迎你注册本图书馆!";
TextPart content = new TextPart(TextFormat.Html)
{
Text = string.Format("<h2>你好!{0}欢迎你注册这个图书馆</h2>", reader.Name) +
string.Format("<h3>你的基本信息如下</h3><p>" +
"姓名:{0}<br>" +
"账号: {1}<br>" +
"邮箱: {2}<br>" +
"班级:{3}<br></p>" +
"<h5>希望你能在本图书馆的海洋中畅游!</h5>" +
"<h6 style="float:right;">图书馆管理员,此致!</h6>", reader.Name, reader.Id, reader.Email, reader.Class)
};
SendEmail(reader.Email, title,content);
最后
以上就是动人身影为你收集整理的如何在ASP.NET使用MailKit发送常规文本邮件的全部内容,希望文章能够帮你解决如何在ASP.NET使用MailKit发送常规文本邮件所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复