Ⅰ. はじめに
メール配信サービスのAPIをラップした FluentEmail というライブラリの紹介です。
.NET Standard で作られているためクロスプラットフォームで動作します。
各サービスの API ドキュメントには HttpClient や RestClient 等を使って Web API を直接呼び出すサンプルがあります。
しかし、メールを送信する為に各サービスごとに Web API ドキュメントを読み、理解し、実装する手間がかかります。
FluentEmail はこれらの問題を解決してくれます。
2017/04/23 時点でSMTP, Mailgun, SendGrid に対応しています。
Ⅱ. FluentEmail のサンプル(SMTPの例)
1. NuGet から FluentEmail.Smtp をインストールする
2. サンプルプログラム
var smtp = new SmtpSender(new SmtpClient("smtp.example.com", 465)); var email = Email.From("from@example.com", "MyName") .To("to@gmail.com") .Subject("Test subject") .Body("Test body"); smtp.Send(email);
Ⅲ. FluentEmail のサンプル(Mailgunの例)
1. NuGet から FluentEmail.Mailgun をインストールする
2. サンプルプログラム
public async Task<bool> SendEmail() { Email.DefaultSender = new MailgunSender( "mydomain.tld", "key-********************************"); var email = Email .From("from@mydomain.tld") .To("to@gmail.com") .Subject("件名") .Body("本文"); var response = await email.SendAsync(); return response.Successful; }