当响应内容类型为pdf

时间:2018-01-03 14:44:45

标签: c# asp.net pdf

我有一个在浏览器上显示pdf文件的应用程序,它适用于大多数文件 但有些人给我一个错误,我评论了指定内容类型的行并且它有效,但我不知道为什么,我无法检查每个pdf文件,因为有数百万。 pdf文件没有损坏。

有人可以解释为什么会这样吗?

        HttpContext context
        context.Response.Buffer = true;
        context.Response.Charset = "";
        context.Response.Cache.SetCacheability(HttpCacheability.NoCache);

        //If I include this line some pdfs are not shown, shows message file does not begin with ' pdf-'
        //context.Response.ContentType = "application/pdf";

        context.Response.BinaryWrite(document);
        context.Response.Flush();
        context.Response.End();

1 个答案:

答案 0 :(得分:0)

我现在理解错误信息,这意味着你的pdf文件格式不正确,没有pdf查看器会渲染它,所以我在这个帖子中使用@Kiquenet发布的代码来验证它是否以pdf开头:

Detect if PDF file is correct (header PDF)

工作正常。