2017年に.NET標準のSystem.Net.Mail.SmtpClient
が廃止予定となり、Microsoftより今後はオープンソースライブラリである、MailKitに置き換えるとアナウンスがありました。
この記事では、MacのVisual StudioでMailKitを使う方法を解説します。
スポンサーリンク
NuGetでMailKitのパッケージを追加する
MacのVisual Studioを起動しプロジェクトを作成したら、ソリューションエクスプローラから、[依存関係] → [パッケージの追加] を選択します。
右上の検索窓に"mailkit"と入力すると、検索結果の先頭に「MailKit」のパッケージが表示されます。左側にあるチェックを付けて [パッケージの追加] をクリックします。
利用規約の内容を確認して [同意する] をクリックします。
MailKitのパッケージのダウンロードが完了すると、 [依存関係] → [NuGet] の下に MailKitのパッケージが追加されます。
メールを送ってみる
NuGetでMailKitがインストールできたら、実際にメールを送信するコードを書いて、メールを送信してみましょう。以下がMailKitでメールを送るためのサンプルコードです。
var host = "<smtp server name>";
var port = 25; // or 587
using (var smtp = new MailKit.Net.Smtp.SmtpClient()) {
//SMTPサーバに接続する
smtp.Connect(host, port, MailKit.Security.SecureSocketOptions.Auto);
//認証が必要な場合は、以下のコメントを解除
//smtp.Authenticate("<id>", "<password>");
//送信するメールを作成する
var mail = new MimeKit.MimeMessage();
var builder = new MimeKit.BodyBuilder();
mail.From.Add(new MimeKit.MailboxAddress("", "<from mail address>"));
mail.To.Add(new MimeKit.MailboxAddress("", "<to mail address>"));
mail.Subject = "メールの件名";
builder.TextBody = "メールの本文です。\n\n以上";
mail.Body = builder.ToMessageBody();
//メールを送信する
smtp.Send(mail);
//SMTPサーバから切断する
smtp.Disconnect(true);
}
詳細なサンプルコードは、以下のリンクで紹介していますので、合わせて見てください。
# MailKitの使い方! エンコーディング指定でメールを送信する
スポンサーリンク
さいごに
MacのVisual StudioでMailKitを使う方法を解説してきました。System.Net.Mail.SmtpClient
は既に廃止されたAPIですので、今後は積極的にMailKitを使いましょう。
0 件のコメント:
コメントを投稿