我想显示一个PDF文件并且它正常工作但是当我点击保存按钮时它要求我保存一个aspx页面而不是PDF文件? 这是我的代码:
string path = CanvasWritingStepImages._pdfName;
WebClient client = new WebClient();
Byte[] buffer = client.DownloadData(path);
if (buffer != null)
{
//content-disposition
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", "attachment ;filename=Formulike.PDF");
Response.BinaryWrite(buffer);
}
else
{
logger.Error("Buffer was Null!");
}
当我保存它时,我怎么能把它变成PDF文件? 可能是在新标签中打开?如果是这样, 我怎么能这样做?
答案 0 :(得分:1)
尝试替换此行
Response.AddHeader("content-length", "attachment; filename=Formulike.PDF");
有了这个
Response.AddHeader("Content-Disposition", "attachment; filename=Formulike.pdf");
您也可以使用
Response.AddHeader("Content-Disposition", "inline; filename=Formulike.pdf");
从attachment
更改为inline
将导致pdf显示在浏览器窗口中,而不是使用保存/打开对话框提示
答案 1 :(得分:0)
感谢@kelix我发现了一种方法,可以下载PDF和显示PDF
Response.AddHeader("Content-Disposition", "inline; filename=Formulike.pdf");
Response.AddHeader("content-length", "attachment ;filename=Formulike.PDF");
“内联”很重要。