我在生产服务器上的 IE 10 中的 ASP.NET/VB Web 窗体应用程序(以 .NET 2.0 为目标)中的 Response.WriteFile 方法(我认为是)有问题。基本上,这段代码已经到位,并且在 IE 10 之前已经运行了很多年。现在,当我通过 Visual Studio 在本地测试它时它工作正常,但是当它在生产服务器(Server 2008 R2,IIS 7)上时,我收到无法下载文件的错误消息。当我强制它时,我得到一个损坏的 PDF。我正在使用 Crystal Reports X 生成 PDF。任何愿意帮助我用正确的措辞来研究这个问题的人都会得到我永远的感激!我已经尝试了各种 IE 10 的所有兼容模式。我已经按照 Scott Hanselman 更新了 App_Browsers 文件夹中的浏览器定义文件http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx。作为一个相对新手开发人员,我不确定我在 IE 10 上如何通过 VS 工作,但在将其投入生产时无法工作。
这是有问题的代码片段:
...
Response.ContentType = "application/pdf"
Response.AddHeader("content-disposition", "attachment; filename=ThisReport_" & Server.UrlEncode(Me.ReportName.Text & "_" & Now.Month.ToString() & "_" & Now.Day.ToString() & "_" & Now.Year.ToString()) & ".pdf")
Response.WriteFile(strFileName)
...
预先感谢您在解决此问题时提供的任何帮助、指导或指导。我在我的应用程序中的很多地方都有这个,所以找到一个根级别的修复程序比在它出现的每个地方修复它更可取。不幸的是,目前还不能升级到 .NET 4.5。