1

http://www.codeproject.com/Articles/260470/PDF-reporting-using-ASP-NET-MVC3

我已经使用了上面链接中给出的代码,并在保存生成的 pdf 时发现了问题。所以请给我一个保存pdf的想法,这样我就可以通过邮件发送它。

4

1 回答 1

4

好的,阅读完这篇文章后,我您要问的是如何将 PDF 作为电子邮件的附件发送,而不是在浏览器中将其流式传输给用户。

链接中的代码包含此段,我假设您将能够在自己的代码中识别和定位:

string htmlText = this.htmlViewRenderer.RenderViewToString(this, viewName, model);

// Let the html be rendered into a PDF document through iTextSharp.
byte[] buffer = standardPdfRenderer.Render(htmlText, pageTitle);

此时,您将拥有一个包含 PDF 文档的字节数组。因此,将其保存到磁盘所需要做的就是:

using(FileStream fs = new FileStream("your file name.pdf", FileMode.Create))
{
    fs.Write(buffer, 0, buffer.Length);
}

然后,您可以使用您的文件创建电子邮件附件。

于 2012-12-04T19:13:43.927 回答