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
}