ASP.NET Core中使用MialKit實(shí)現(xiàn)郵件發(fā)送功能
具體代碼如下所示:
# 導(dǎo)包 首先我們需要導(dǎo)入 MailKit NuGet包,NuGet安裝包命令在下方拓展介紹中。 # 引用命名空間 using MailKit.Net.Smtp; using MimeKit; # 郵件發(fā)送幫助類(lèi) /// <summary> /// 發(fā)送郵件 /// </summary> /// <param name="Name">發(fā)件人名字</param> /// <param name="receive">接收郵箱</param> /// <param name="sender">發(fā)送郵箱</param> /// <param name="password">郵箱密碼</param> /// <param name="host">郵箱主機(jī)</param> /// <param name="port">郵箱端口</param> /// <param name="subject">郵件主題</param> /// <param name="body">郵件內(nèi)容</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代表一封電子郵件的對(duì)象 var message = new MimeMessage(); # 添加發(fā)件人地址 Name 發(fā)件人名字 sender 發(fā)件人郵箱 message.From.Add(new MailboxAddress(Name, sender)); # 添加收件人地址 message.To.Add(new MailboxAddress("", receive)); # 設(shè)置郵件主題信息 message.Subject = subject; # 設(shè)置郵件內(nèi)容 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; }
借助這一個(gè)簡(jiǎn)單的郵件發(fā)送類(lèi)我們就可以已經(jīng)可以實(shí)現(xiàn)郵件發(fā)送功能了。
# 拓展(NuGet常用命令)
1、安裝指定版本:install-package <程序包名> -version <版本號(hào)>
2、更新包:Update-Package <程序包名>
3、重新安裝所有Nuget包(整個(gè)解決方案都會(huì)重新安裝)
update-package -reinstall
4、重新安裝指定項(xiàng)目所有Nuget包
update-package -project <項(xiàng)目名稱(chēng)> -reinstall
5、正常卸載:uninstall-package <程序包名>
6、強(qiáng)制卸載:Uninstall-Package <程序包名> -Force
總結(jié)
以上所述是小編給大家介紹的ASP.NET Core中使用MialKit實(shí)現(xiàn)郵件發(fā)送功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
asp.net MVC實(shí)現(xiàn)簡(jiǎn)單的上傳功能
MVC中上傳變得越來(lái)越容易,可是對(duì)于新手這個(gè)也還是不知道如何實(shí)現(xiàn),以下方式實(shí)現(xiàn)MVC的上傳功能,以下2種方法都是可以實(shí)現(xiàn)的,其中的代碼參考了藍(lán)色小鋪和重典的文章。2009-11-11.Net Core微信服務(wù)商二次進(jìn)件的開(kāi)發(fā)
這篇文章主要介紹了.Net Core微信服務(wù)商二次進(jìn)件的開(kāi)發(fā),包括服務(wù)商證書(shū)獲取方法及查詢(xún)進(jìn)件狀態(tài)的詳細(xì)代碼,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-10-10Asp.Net Core添加請(qǐng)求頭自定義認(rèn)證的示例
這篇文章主要介紹了Asp.Net Core添加請(qǐng)求頭自定義認(rèn)證的示例,幫助大家更好的理解和學(xué)習(xí)使用.net技術(shù),感興趣的朋友可以了解下2021-04-04ASP.NET中將聲音文件添加到資源中并進(jìn)行播放的方法
這篇文章主要介紹了ASP.NET中將聲音文件添加到資源中并進(jìn)行播放的方法,實(shí)例分析了聲音文件的添加及播放實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07.NET發(fā)送郵件的實(shí)現(xiàn)方法示例
這篇文章主要給大家介紹了關(guān)于.NET發(fā)送郵件的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用.net具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-06-06在Apache環(huán)境下成功的運(yùn)行ASP.NET的注意事項(xiàng)
在Apache環(huán)境下成功的運(yùn)行ASP.NET的注意事項(xiàng)...2007-08-08ASP.NET網(wǎng)站偽靜態(tài)下使用中文URL的方法
中文URL是在URL中直接使用漢字,它的好處是可以使用鏈接地址看起來(lái)非常直觀易懂,偽靜態(tài)的規(guī)則,是在web.config文件中定義的2014-08-08asp.net+ajax的Post請(qǐng)求實(shí)例
這篇文章主要介紹了asp.net+ajax的Post請(qǐng)求實(shí)現(xiàn)方法,實(shí)例分析了Ajax的發(fā)送post數(shù)據(jù)的原理與技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01在?Net7.0?環(huán)境下如何使用?RestSharp?發(fā)送?Http(FromBody和FromForm)請(qǐng)求
這篇文章主要介紹了在?Net7.0?環(huán)境下使用?RestSharp?發(fā)送?Http(FromBody和FromForm)請(qǐng)求,今天,我就兩個(gè)小的知識(shí)點(diǎn),就是通過(guò)使用?RestSharp?訪問(wèn)?WebAPI,提交?FromBody?和?FromForm?兩種方式的數(shù)據(jù),還是有些區(qū)別的,本文結(jié)合實(shí)例代碼介紹的非常詳細(xì),需要的朋友參考下吧2023-09-09