欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

在Asp.NetCore中發(fā)送一個(gè)Email的步驟有哪些-創(chuàng)新互聯(lián)

這篇文章給大家介紹在Asp.Net Core中發(fā)送一個(gè)Email的步驟有哪些,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)介紹好的網(wǎng)站是理念、設(shè)計(jì)和技術(shù)的結(jié)合。創(chuàng)新互聯(lián)公司擁有的網(wǎng)站設(shè)計(jì)理念、多方位的設(shè)計(jì)風(fēng)格、經(jīng)驗(yàn)豐富的設(shè)計(jì)團(tuán)隊(duì)。提供PC端+手機(jī)端網(wǎng)站建設(shè),用營(yíng)銷思維進(jìn)行網(wǎng)站設(shè)計(jì)、采用先進(jìn)技術(shù)開源代碼、注重用戶體驗(yàn)與SEO基礎(chǔ),將技術(shù)與創(chuàng)意整合到網(wǎng)站之中,以契合客戶的方式做到創(chuàng)意性的視覺化效果。

安裝 MailKit

要想使用 MailKit,你可以使用 Visual Studio 2019 中的 NuGet package manager 可視化界面進(jìn)行安裝,或者通過 NuGet package manager console 命令行輸入如下命令:

Install-Package NETCore.MailKit

安裝完成之后,在代碼中引入以下命令空間即可。

using MailKit.Net.Smtp;
using MimeKit;

配置 Email 的基礎(chǔ)信息

下面的代碼片段展示了在 appsettings.json 文件中配置 email 的詳細(xì)信息。

"NotificationMetadata": {
 "Sender": "sender_email@gmail.com",
 "SmtpServer": "smtp.gmail.com",
 "Reciever": "receiver_email@yahoo.com",
 "Port": 465,
 "Username": "sender_email_user@gmail.com",
 "Password": "specify your password here"
 }

為了能夠?qū)崿F(xiàn) configuration 中的NotificationMetadata節(jié)點(diǎn)映射,我定義了一個(gè) NotificationMetadata 類,代碼如下:

 public class NotificationMetadata
 {
  public string Sender { get; set; }
  public string Reciever { get; set; }
  public string SmtpServer { get; set; }
  public int Port { get; set; }
  public string UserName { get; set; }
  public string Password { get; set; }
 }

接下來(lái)在 Startup.ConfigureServices 方法中將 NotificationMetadata 節(jié)點(diǎn)映射到 NotificationMetadata 類。

public void ConfigureServices(IServiceCollection services)
{
  var notificationMetadata =
  Configuration.GetSection("NotificationMetadata").
  Get<NotificationMetadata>();
  services.AddSingleton(notificationMetadata);
  services.AddControllers();
}

生成 EmailMessage 消息類

使用如下代碼創(chuàng)建一個(gè) EmailMessage 類。

private MimeMessage CreateMimeMessageFromEmailMessage(EmailMessage message)
{
  var mimeMessage = new MimeMessage();
  mimeMessage.From.Add(message.Sender);
  mimeMessage.To.Add(message.Reciever);
  mimeMessage.Subject = message.Subject;
  mimeMessage.Body = new TextPart(MimeKit.Text.TextFormat.Text)
  { Text = message.Content };
  return mimeMessage;
}

生成 MimeMessage 類

下面的代碼展示了如何從自定義的 EmailMessage 類中構(gòu)造出一個(gè) MimeMessage。

private MimeMessage CreateMimeMessageFromEmailMessage(EmailMessage message)
{
  var mimeMessage = new MimeMessage();
  mimeMessage.From.Add(message.Sender);
  mimeMessage.To.Add(message.Reciever);
  mimeMessage.Subject = message.Subject;
  mimeMessage.Body = new TextPart(MimeKit.Text.TextFormat.Text)
  { Text = message.Content };
  return mimeMessage;
}

用 MailKit 同步發(fā)送 Email

為了最終能夠?qū)崿F(xiàn) email 發(fā)送,需要使用 MailKit.Net.Smtp 命名空間下的 SmtpClient 類,下面的代碼展示了具體實(shí)現(xiàn)步驟。

using (SmtpClient smtpClient = new SmtpClient())
{
 smtpClient.Connect(_notificationMetadata.SmtpServer,
 _notificationMetadata.Port, true);
 smtpClient.Authenticate(_notificationMetadata.UserName,
 _notificationMetadata.Password);
 smtpClient.Send(mimeMessage);
 smtpClient.Disconnect(true);
}

為了方便起見,我就把完整的發(fā)送 Email 代碼放在 DefaultController.Get 方法下。

public string Get()
{
 EmailMessage message = new EmailMessage();
 message.Sender = new MailboxAddress("Self", _notificationMetadata.Sender);
 message.Reciever = new MailboxAddress("Self", _notificationMetadata.Reciever);
 message.Subject = "Welcome";
 message.Content = "Hello World!";
 var mimeMessage = CreateEmailMessage(message);
 using (SmtpClient smtpClient = new SmtpClient())
 {
  smtpClient.Connect(_notificationMetadata.SmtpServer,
  _notificationMetadata.Port, true);
  smtpClient.Authenticate(_notificationMetadata.UserName,
  _notificationMetadata.Password);
  smtpClient.Send(mimeMessage);
  smtpClient.Disconnect(true);
 }
 return "Email sent successfully";
}

用 MailKit 異步發(fā)送 Email

上面我們用同步的方式發(fā)送 Email,這一節(jié)來(lái)看看如何使用異步的方式發(fā)送 Email。

using (SmtpClient smtpClient = new SmtpClient())
 {
  await smtpClient.ConnectAsync(_notificationMetadata.SmtpServer,
  _notificationMetadata.Port, true);
  await smtpClient.AuthenticateAsync(_notificationMetadata.UserName,
  _notificationMetadata.Password);
  await smtpClient.SendAsync(mimeMessage);
  await smtpClient.DisconnectAsync(true);
}

關(guān)于在Asp.Net Core中發(fā)送一個(gè)Email的步驟有哪些就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

新聞名稱:在Asp.NetCore中發(fā)送一個(gè)Email的步驟有哪些-創(chuàng)新互聯(lián)
URL分享:http://aaarwkj.com/article36/gccsg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、搜索引擎優(yōu)化、App開發(fā)、品牌網(wǎng)站設(shè)計(jì)、全網(wǎng)營(yíng)銷推廣、域名注冊(cè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
亚洲精品偷拍在线观看| 日本韩国国产三级在线| 暖暖免费中文高清日本三区| 亚洲男人天堂在线视频| 中文在线在线天堂中文| 日韩不卡区免费在线观看| 日韩精品不卡在线观看| 日产一区二区三区网站| 综合av在线一区天堂| av中文字幕啊嗯不要| 国产美女口爆吞精久久| 亚洲无线码一区国产欧美国日| 中文字幕乱码日韩一二三区| 国产日产亚洲欧美综合另类| 性生活免费在线观看视频| 日本师生三片在线观看| 91亚洲精品综合久久| 护士一级特黄特色大片| 一区二区三区福利视频在线观看| 粉嫩美女精品一区二区| 午夜香蕉av一区二区三区| 国产精品一区二区三区专区| 校园春色亚洲欧美日韩| 年轻的母亲韩国三级| 91国产自拍在线视频| 人妻少妇精品一区毛二区| 亚洲国产精品97视频| 日韩中文不卡人成在线视频 | 日本一区二区视频播放网站| 中文字幕亚洲入口久久| 欧美一区二区欧美精品| 免费爱爱视频在线观看| 亚洲成av人的天堂在线观看女人| 亚洲精品入口一区二区| 一卡二卡精品在线免费| 内射性感黑丝少妇av| 肥臀大屁股av在线播放| 国产亚洲精品视频二区| 成人欧美黑人一区二区| 精品一区二区三区女同| 亚洲美女国产精选999|