ASP.NET Core 1.0實現(xiàn)郵件發(fā)送功能
準備將一些項目遷移到 asp.net core 先從封裝類庫入手,在遇到郵件發(fā)送類時發(fā)現(xiàn)在 asp.net core 1.0中并示提供SMTP相關(guān)類庫,于是網(wǎng)上一搜發(fā)現(xiàn)了MailKit
好東西一定要試一下,何況是開源,下面是代碼可實現(xiàn)SMTP郵件發(fā)送:
using MailKit.Net.Smtp;
using MailKit.Security;
using MimeKit;
using System.Threading.Tasks;
namespace ConsoleApp1
{
public class MailHelper
{
public static void Send(string email, string subject, string message)
{
var emailMessage = new MimeMessage();
emailMessage.From.Add(new MailboxAddress("tianwei blogs", "mail@hantianwei.cn"));
emailMessage.To.Add(new MailboxAddress("mail", email));
emailMessage.Subject = subject;
emailMessage.Body = new TextPart("plain") { Text = message };
using (var client = new SmtpClient())
{
client.Connect("smtp.hantianwei.cn", 465, true);
client.Authenticate("mail@hantianwei.cn", "******");
client.Send(emailMessage);
client.Disconnect(true);
}
}
public static async Task SendEmailAsync(string email, string subject, string message)
{
var emailMessage = new MimeMessage();
emailMessage.From.Add(new MailboxAddress("tianwei blogs", "mail@hantianwei.cn"));
emailMessage.To.Add(new MailboxAddress("mail", email));
emailMessage.Subject = subject;
emailMessage.Body = new TextPart("plain") { Text = message };
using (var client = new SmtpClient())
{
await client.ConnectAsync("smtp.hantianwei.cn", 25, SecureSocketOptions.None).ConfigureAwait(false);
await client.AuthenticateAsync("mail@hantianwei.cn", "******");
await client.SendAsync(emailMessage).ConfigureAwait(false);
await client.DisconnectAsync(true).ConfigureAwait(false);
}
}
}
}
以上代碼同步異步都沒有問題
注:一般郵箱如騰訊企業(yè)郵、163等都可以發(fā)送成功,但阿里云郵件推送失敗,如果有高手可實現(xiàn)阿里云推送郵件請告訴我一下,非常感謝!
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
ASP.NET MVC5使用MiniProfiler監(jiān)控MVC性能
這篇文章主要為大家詳細介紹了ASP.NET MVC5使用MiniProfiler監(jiān)控MVC性能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07
使用EF Code First搭建簡易ASP.NET MVC網(wǎng)站并允許數(shù)據(jù)庫遷移
這篇文章介紹了使用EF Code First搭建簡易ASP.NET MVC網(wǎng)站并允許數(shù)據(jù)庫遷移的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-09-09
在ASP.NET2.0中通過Gmail發(fā)送郵件的代碼
我們有時候需要發(fā)送郵件給訪問網(wǎng)頁的用戶,例如,注冊的時候,發(fā)一確認信什么的。那么,在ASP.NET2.0中該如果操作呢?2008-06-06
asp.net 安全的截取指定長度的html或者ubb字符串
在將html代碼輸出到頁面時,有時候會需要截斷字符串保留指定長度的字符串,由于html中有些標簽必須成對出現(xiàn),所以在截取html時需要特別注意,不能因為截斷問題把頁面搞亂掉。2010-01-01
asp.net操作javascript:confirm返回值的兩種方式
asp.net操作javascript:confirm返回值分為兩種,不使用ajax、使用了ajax,不使用ajax,可以用StringBuilder來完成2014-09-09
ASP.NET中實現(xiàn)把form表單元素轉(zhuǎn)為實體對象或集合
這篇文章主要介紹了ASP.NET中實現(xiàn)把form表單元素轉(zhuǎn)為實體對象或集合,本文又是一個對重復(fù)數(shù)據(jù)處理的一個封裝,非常實用的開發(fā)技巧,需要的朋友可以參考下2015-06-06
.NET 6開發(fā)TodoList應(yīng)用之實現(xiàn)查詢分頁
這篇文章介紹了.NET 6開發(fā)TodoList應(yīng)用之實現(xiàn)查詢分頁,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-01-01
vs2017軟鏈接失效而導(dǎo)致無法進入安裝界面的解決方法
這篇文章主要為大家詳細介紹了vs2017軟鏈接失效而導(dǎo)致無法進入安裝界面的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-09-09

