ASP.NET Core 1.0 메 일 발송 기능 구현

일부 항목 을 asp.net core 로 옮 기 려 고 합 니 다.패키지 라 이브 러 리 에서 시작 하여 메 일 발송 클래스 를 만 났 을 때 asp.net core 1.0 에서 SMTP 관련 라 이브 러 리 를 제공 하 는 것 을 발견 하 였 습 니 다.그래서 인터넷 을 검색 해 보 니 MailKit 가 발견 되 었 습 니 다. 
좋 은 물건 은 반드시 시험 해 봐 야 한다.하물며 개원 이 고 다음은 코드 로 SMTP 메 일 을 보 낼 수 있다. 

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", "[email protected]"));
   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("[email protected]", "******");

    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", "[email protected]"));
   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("[email protected]", "******");
    await client.SendAsync(emailMessage).ConfigureAwait(false);
    await client.DisconnectAsync(true).ConfigureAwait(false);
    
   }
  }

 }
} 

이상 코드 동기 화 비동기 문제 없습니다.
 주:보통 메 일,예 를 들 어 텐 센트 기업 메 일,163 등 은 모두 성공 적 으로 보 낼 수 있 지만 아 리 클 라 우 드 메 일 푸 시 에 실 패 했 습 니 다.만약 에 고수 가 아 리 클 라 우 드 푸 시 메 일 을 실현 할 수 있다 면 알려 주세요.감사합니다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기