読者です 読者をやめる 読者になる 読者になる

備忘録

備忘録

C# で Mailgun や SendGrid などを使ってメールを送信する

Ⅰ. はじめに

メール配信サービスのAPIをラップした FluentEmail というライブラリの紹介です。
.NET Standard で作られているためクロスプラットフォームで動作します。

各サービスの API ドキュメントには HttpClient や RestClient 等を使って Web API を直接呼び出すサンプルがあります。
しかし、メールを送信する為に各サービスごとに Web API ドキュメントを読み、理解し、実装する手間がかかります。

FluentEmail はこれらの問題を解決してくれます。

2017/04/23 時点で、
SMTP, Mailgun, SendGrid に対応しています。

Ⅱ. FluentEmail のサンプル(Mailgunの例)

1. NuGet から FluentEmail.Mailgun をインストールする

f:id:kagasu:20170423123802p:plain

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;
}