私は現在、Visual Studio 2012 内で MVC4 C# プロジェクトに取り組んでいます。最近、ユーザーに電子メールを送信するシステムを追加しました。システムは、MailMessage クラスを使用して、SmtpClient クラスを介して送信されるメッセージをフォーマットします。このメッセージには、本文テキストの視覚的な書式設定を有効にする html のプロパティがあります。
問題は、プロパティ message.Body が現在単一の文字列に書き込まれているため、コードが非常に見苦しく、実際にフォーマットするのが非常に難しいことです。いくつかの調査を行ったところ、一部のソリューションには、システムにリンクされた別の HTML ファイルとしてメールが含まれていることがわかりました。これにより、メッセージの書式設定がはるかに簡単になりました。唯一の問題は、私が見つけた例には、このタイプのソリューションを適切に実装する方法に関するドキュメントがなかったことです。
これが、見苦しい MailMessage コードの意味です。
var message = new MailMessage(fromAddress, toAddress);
message.Subject = "Password Recovery Email";
message.IsBodyHtml = true;
message.Body =
"Hello " + UserName +
"<br />" +
"Greetings from website," +
"<br />" +
"You have requested a Password reset. To continue click the following:" +
"<br />" +
"http://www.website.com/PasswordRecover?passwordToken=" + passwordToken +
"<br />" +
"This link will expire in 5 hours." +
"<br />" +
"If you did not intend to request a password reset, you can ignore this email. Someone may have entered your information by mistake. Contact us at support@website.com for more assistance." +
"<br />" +
"Cheers";
概要:
- message.Body のコードが醜く、フォーマットが難しい
- より良い解決策に興味がある
- 記事または例を教えてください