我将SSRS ServerReport渲染为PDF,并在带有SQL Server报告服务2008的ASP.NET 3.5应用程序中的ReportViewer WebForm控件中呈现。
有些使用Internet Explorer 11的人报告说他们无法打开生成的PDF文件或在查看器中看到任何内容。 渲染失败并显示以下错误:
library!ReportServer_0-403!7c8!01/02/2014-11:07:37:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: , Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: Interner Fehler beim Berichtsserver. Weitere Informationen finden Sie im Fehlerprotokoll. ---> System.ArgumentNullException: Value cannot be null.
Parameter name: String
at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
at System.Web.Configuration.HttpCapabilitiesBase.get_MajorVersion()
at Microsoft.ReportingServices.Diagnostics.Utilities.BrowserDetectionUtility.GetBrowserInfoFromRequest(HttpRequest request)
at Microsoft.ReportingServices.Diagnostics.RSRequestParameters.SetBrowserCapabilities(HttpRequest request)
at Microsoft.ReportingServices.Library.RenderReportAction.SetBrowserCapabilities()
at Microsoft.ReportingServices.Library.RenderReportAction.PerformExecution()
at Microsoft.ReportingServices.Library.RenderReportAction.Render()
--- End of inner exception stack trace ---;
我可以将这些错误跟踪到IE11的UserAgent中使用的OEM字符串。
示例:
Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; MALC; rv:11.0) like Gecko
Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; MATM; rv:11.0) like Gecko
Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; NP06; rv:11.0) like Gecko
MALC , MATM 和 NP06 似乎是OEM字符串,不属于通常的IE11 UserAgent。
在IE开发人员工具用户代理设置中删除这些字符串会使一切正常,但不是最终用户的解决方案。
我尝试过的事情:
工作原理:
我觉得这是一个可怕的解决方案,不应该这样做。
如何解析IE11s UserAgent时SSRS不会抛出错误?
有没有办法禁用它或添加自定义正则表达式来手动解析它?
答案 0 :(得分:0)
您可以通过提供其他设备信息将用户代理覆盖到报表服务器。
通过提供此XML片段作为参数
,可以在调用SOAP API的Render方法时完成此操作<DeviceInfo>
<UserAgent>custom_user_agent_here</UserAgent>
</DeviceInfo>
或者像这样使用URL访问
http://<Server Name>/reportserver?/SampleReports/Sales Order Detail&rs:Command=Render&rs:Format=HTML4.0&rc:UserAgent=custom_user_agent_here
参考
Reporting Services设备信息设置 http://msdn.microsoft.com/en-us/library/ms155397(v=sql.110).aspx
HTML设备信息设置 http://msdn.microsoft.com/en-us/library/ms155395(v=sql.110).aspx