ASP.NET MVC发送电子邮件附件

时间:2011-02-07 18:19:58

标签: asp.net-mvc stream email-attachments

我有一个控制器操作,可以生成PDF并将其流式传输到客户端,但也希望有一个控制器操作,将该PDF下载操作的输出通过电子邮件发送给附件。我知道如何发送电子邮件,问题是如何使用/捕获我的电子邮件附件的MVC下载操作。

伪代码:

public PdfResult Download(int? someId)
{
     var pdfBuilder = new pdfBuilder();
     var pdfStream = pdfBuilder.StreamPdf(someId);
     return new PdfResult("someId.pdf", "application/pdf", pdfStream);
}

public ActionResult Email(int? someId)
{
     var pdfStream = View("Download", someId);
     var attachment = new Attachment(pdfStream, "someId.pdf");

     //...send email code
}

1 个答案:

答案 0 :(得分:1)

您可能会尝试添加一个帮助程序类来返回PdfResult而不是在Email()方法中调用Download()。