Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用MvcMailer发送多封电子邮件_C#_Asp.net Mvc 3_Email_Mvcmailer - Fatal编程技术网

C# 使用MvcMailer发送多封电子邮件

C# 使用MvcMailer发送多封电子邮件,c#,asp.net-mvc-3,email,mvcmailer,C#,Asp.net Mvc 3,Email,Mvcmailer,我正在开发一个MVC 3项目,希望每月通过电子邮件向客户发送发票。我将如何发送这些多封电子邮件,如果是一个循环,我将如何编写这个循环 这是我的发票寄件人代码: public virtual MailMessage InvoiceMailed() { var invoices = db.Invoice.FirstOrDefault(); var client = db.Clients.FirstOrDefault(); var m

我正在开发一个MVC 3项目,希望每月通过电子邮件向客户发送发票。我将如何发送这些多封电子邮件,如果是一个循环,我将如何编写这个循环

这是我的发票寄件人代码:

    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 />
Hello@ViewBag.Name


这是您在@ViewBag.month月份的DFP Productions发票

@查看包编号
@ViewBag.Amount
@ViewBag.Month
电子邮件当前正在发送,但显然只有一组信息,并且只发送给三个收件人中的两个(这是因为FirstOrDefault,我应该使用什么替代?)

谢谢,
艾米

基本逻辑是

  • 获取要计费的客户端集
  • 实例化的实例,连接到MTA
  • 对于集合中的每个客户端,
    • 计算他们的发票数据
    • 使用客户机和客户机的发票数据,根据需要构造MailMessage的实例
    • 通过SmtpClient实例发布消息
  • 处置SmtpClient实例(以及不再需要的任何其他IDisPobles)

好的,很酷,所以FirstOrDefault是指只需要序列中的第一个元素。如果我想要所有元素,我会放什么?我对MVC和C非常陌生#