【发布时间】:2010-10-19 16:03:43
【问题描述】:
我有一个控制台应用程序,需要我发送电子邮件。现在我使用字符串生成器来创建电子邮件,但我想变得更花哨。然后我恍然大悟:最好将我的对象发送到 ASP.NET MVC 样式视图,在其中我有 HTML 标记,然后将其返回以邮寄出去。现在,我的情况是;
private void MailJobList(List<Job> newJobs) {
var body = new System.Text.StringBuilder();
var from = new MailAddress("daemon@mydomain.com");
var to = new MailAddress(addresslist.Get());
var message = new MailMessage(from, to);
message.Subject = "New job list";
//mail settings ommitted here for brevity
body.Append("New jobs: ");
if (newJobs.Any()) {
foreach (var newJob in newJobs) {
body.Append(newJob.Job + ", ");
}
}
message.Body = body.ToString();
client.Send(message);
}
显然这只是纯文本,但我真的很想能够做这样的事情:
var body = RenderHTMLMessage(newJobs);
似乎我应该能够利用 ASP.NET MVC 的视图引擎(或 Spark 或任何其他视图引擎)而不是自己动手。如果我在这里不符合要求或有任何更简单的方法可以做到这一点,我愿意接受建议。
【问题讨论】:
-
这似乎是一个相关(并且非常相似)的问题:stackoverflow.com/questions/1730134/asp-net-mvc-email.
标签: asp.net-mvc asp.net-mvc-2 viewengine