C#で簡単にメールを送信する方法についてまとめました。
C#のSmtpClientクラスを使う
C#でメール送信するにはSmtpClientクラスを使うとよいでしょう。
具体的には以下のようにします。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
try { MailMessage msg = new MailMessage(); msg.From = new MailAddress("送信元のメールアドレス"); msg.To.Add(new MailAddress("送信先のメールアドレス")); msg.Subject = "タイトル"; msg.Body = "メールの本文"; SmtpClient sc = new SmtpClient(); sc.Host = "送信サーバー"; sc.Port = 25; sc.Credentials = new System.Net.NetworkCredential("ユーザー名", "パスワード"); sc.Send(msg); catch (Exception ex) { Error err = new Error(); err.Message = ex.Message; } |
送信サーバー、ユーザー名、パスワードは、普段メールの送受信で使っている送信サーバー、ユーザー名、パスワードを設定します。
SmtpException 操作がタイムアウトしました
メールを送信したところ
SmtpException 操作がタイムアウトしました
となってメールの送信が出来ませんでした。
SMTPサーバーに接続できないなどでタイムアウトした場合にこのエラーが発生します。
タイムアウトはデフォルトで100秒です。
このエラーが出た場合は
メール送信サーバー名、ポート番号、ユーザー名、パスワードを確認します。
コメント