【发布时间】:2013-09-02 16:07:04
【问题描述】:
我即时生成一个 pdf 文件并将其保存到服务器端,但我需要将其保存到客户端计算机。如何做到这一点..
Document doc = new Document();
MemoryStream memoryStream = new MemoryStream();
string PDFName = ProjectName + ".pdf";
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(Server.MapPath("~/ProjectFiles") + "/" +
PDFName, FileMode.Create));
doc.Open();
//PDF Content
doc.Close();
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=" + PDFName);
Response.Buffer = true;
Response.Clear();
Response.OutputStream.Write(memoryStream.GetBuffer(), 0, memoryStream.GetBuffer().Length);
Response.OutputStream.Flush();
Response.End();
In Response.OutputStream.Write(memoryStream.GetBuffer(), 0, memoryStream.GetBuffer().Length);
memoryStream 长度为 0。我需要将保存的 pdf 下载到 Cleint 机器中。 请帮我解决这个问题..
【问题讨论】:
-
看来你没有在任何地方填充 memoryStream。在 OutputStream.Write 中使用 FileStream.Write 与 PdfWriter.GetInstance 中相同。
-
如何写@mswietlicki...任何代码?
-
它是否保存在服务器上 - 你可以打开 pdf 文件吗?
-
是的,它保存在服务器上..是的,我可以打开它..
标签: c# asp.net-mvc asp.net-mvc-3