如果使用'保存链接为',则加载pdf,但如果用户点击链接则不加载

时间:2010-07-27 13:35:32

标签: asp.net pdf asp.net-ajax updatepanel

提交表单后,会向用户显示pdf文档的链接。 链接直接到文档,它不是流式传输。

如果用户右键单击并选择“保存链接为”,文档将保存并打开正常。但是,如果用户只是点击链接,浏览器需要很长时间才能响应(我猜这是3分钟),然后adobe reader会出现以下错误:

“文件已损坏,无法修复”

这是在Chrome v5,ASP.NET 3.5中,链接在UpdatePanel内返回。

2 个答案:

答案 0 :(得分:0)

它取决于为PDF链接配置的浏览器设置。如果您更改浏览器中的设置,您将获得下载对话框。

Mozilla Firefox

  1. 打开Mozilla Firefox
  2. 点击工具,然后点击选项
  3. 在“选项”窗口中,单击“应用程序”
  4. 选择您要调整的内容类型。例如,如果要更改.PDF文件在Firefox中的打开方式,请选择“Adobe Acrobat文档”。
  5. 在“操作”部分中,将操作更改为您希望如何打开文件。如果要下载.PDF文件而不是打开它们,请选择保存文件。
  6. Internet Explorer:

    您必须右键单击并单击“保存目标”才能下载。

    另一种选择是,创建一个单独的asp.net并编写下面的代码来下载PDF

    private void Page_Load(object sender, System.EventArgs e)
    {
      //Set the appropriate ContentType.
      Response.ContentType = "Application/pdf";
      //Get the physical path to the file.
      string FilePath = MapPath("acrobat.pdf");
      //Write the file directly to the HTTP content output stream.
      Response.WriteFile(FilePath);
      Response.End();
    }
    

答案 1 :(得分:0)

我以前遇到过这个问题,原因是PDF本身。

Adob​​e有很多原因:http://kb2.adobe.com/cps/328/328233.html

FWIW,我的PDf问题通过在Adobe中打开PDF并转到Document - >来解决。减小文件大小 - >与版本7兼容。(当前版本 - 2)