我目前正在开发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";
要点: