【发布时间】:2011-10-05 05:20:48
【问题描述】:
我正在开发一个 MVC 3 项目,并希望每月通过电子邮件向客户发送发票。我将如何发送这些多封电子邮件,如果是一个循环,我将如何编写这个循环?
这是我的 InvoiceMailer 代码:
public virtual MailMessage InvoiceMailed()
{
var invoices = db.Invoice.FirstOrDefault();
var client = db.Clients.FirstOrDefault();
var mailMessage = new MailMessage{Subject = "InvoiceMailed"};
mailMessage.To.Add("amecily@gmail.com");
mailMessage.Bcc.Add(client.EmailAddress);
ViewBag.Name = client.FullName;
ViewBag.Number = invoices.InvoiceNumberID;
ViewBag.Amount = invoices.InvoiceAmount;
ViewBag.Month = invoices.InvoiceMonth;
PopulateBody(mailMessage, viewName: "InvoiceMailed");
return mailMessage;
}
我的电子邮件视图:
Hello @ViewBag.Name
<br /><br />
This is your invoice from DFP Productions for the month of @ViewBag.Month
<br /><br />
@ViewBag.Number<br />
@ViewBag.Amount<br />
@ViewBag.Month<br />
电子邮件当前正在发送,但显然只有一组信息,并且只发送给三个收件人中的两个(这是由于 FirstOrDefault 而我应该使用什么来代替?)。
谢谢, 艾米
【问题讨论】:
-
好的很酷,所以 FirstOrDefault 是当你只想要序列中的第一个元素时。如果我想要所有元素,我会放什么?我对 MVC 和 C# 很陌生
标签: c# asp.net-mvc-3 email mvcmailer