Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# PDF在浏览器上显示为文本_C#_Asp.net_Pdf_Moss - Fatal编程技术网

C# PDF在浏览器上显示为文本

C# PDF在浏览器上显示为文本,c#,asp.net,pdf,moss,C#,Asp.net,Pdf,Moss,我正在尝试向用户显示数据库(字节[])中的PDF文件 我正在使用下面的代码呈现PDF。它是给我的PDF作为二进制文本如下所示。它不是在PDF应用程序中打开,而是将PDF呈现为文本 Response.Buffer = true; Response.Charset = ""; Response.Cache.SetCacheability(HttpCacheability.NoCache); //Response.AddHeader(

我正在尝试向用户显示数据库(字节[])中的PDF文件

我正在使用下面的代码呈现PDF。它是给我的PDF作为二进制文本如下所示。它不是在PDF应用程序中打开,而是将PDF呈现为文本

Response.Buffer = true;
        Response.Charset = "";
        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        //Response.AddHeader("Content-Length", fileToDownload.Length.ToString());
        //Response.AddHeader("Content-Disposition", "inline; name=RemoteUserGuide.pdf");
        Response.AppendHeader("content-length", fileToDownload.Length.ToString());
        Response.ContentType = "application/pdf";
        Response.BinaryWrite(fileToDownload);
        Response.Flush();
        ////Response.Close();
        Response.End();
更新:刚刚注意到,此应用程序页面在CHROME中正确呈现PDF,但在IE中仍然显示文本(服务器上没有要测试的FF3)。可能是浏览器的问题吧

有什么想法吗?

确保IIS(Internet信息服务)中.pdf扩展名的MIME类型设置为“application/pdf”。

如果您确定浏览器可以查看pdf,则应使用
@PAGE ContentType=“application/pdf”
指令,而不是
Response.ContentType=“application/pdf”


您还应该使用
Response.AddHeader(“内容处置”,“文件名=\”document.pdf\”)
对于设置文件名

,正如其他人所说,尝试将MIME类型/标题设置为application/pdf,如果这不起作用,最后一件事就是关闭浏览器并重新打开同一页面,我以前在使用FPDF(PHP中的pdf生成库)时遇到过这个问题,它看起来像浏览器缓存页面(PHP)的MIME并将其永久保留,通过关闭浏览器并重新打开它,它将工作#1。

损坏的adobe install会执行此操作。在目标(客户端)计算机上重新安装Adobe Reader


有时,Adobe安装程序会崩溃并执行此操作

您使用什么浏览器?请查看我的更新…谢谢。他正在手动设置内容类型。这与IIS添加到响应中的行为相同吗?我认为OP缺少文件名调用。尝试使用的文件名仍然相同。问题是PDF安装已损坏。重新安装后工作正常。谢谢由于我们人手不足,程序员在覆盖率较低的日子里负责服务台的工作。你得到了一个完整的画面,而不是挂在编程象牙塔!我完全同意,对于开发人员来说,帮助台将是非常好的经验。几周前,我接到了微软的支持电话,我对这些人的广博知识感到惊讶。它不能与任何训练或阅读书籍一起出现。它被称为“战壕中”。