我有一个"下载PDF"用于呈现ReportViewer并使用Adobe Reader在浏览器中打开它的按钮 这是代码:
Warning[] warn = null;
String[] streamids = null;
String mimeType = "application/pdf";
String encoding = String.Empty;
String extension = String.Empty;
Byte[] byteViewer;
byteViewer = report.LocalReport.Render("pdf", null, out mimeType, out encoding, out extension, out streamids, out warn);
Response.Buffer = true;
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "inline; filename=" + fileName + ".pdf");
Response.BinaryWrite(byteViewer);
Response.Flush();
Response.End();
但是现在,我想打开下载对话框来下载文件,而不是打开pdf。我应该对代码进行哪些更改?
@edit 这个问题的答案过于广泛,我的问题被要求简化下载ReportViewer的过程,并为未来可能遇到这个问题的C#程序员添加一个参考,而不必挖掘无用的PHP代码行来查找答案。
答案 0 :(得分:0)
为了简化可能发现此问题的未来StackOverflow用户的代码:
在Response.AddHeader("content-disposition", "inline; filename=" + fileName + ".pdf");
中,只需将inline
更改为attachment
,即可下载该文件,而不是在浏览器中打开。
这个答案太简单了,所以我会查看"社区维基"公平。