c# - 尝试从 Web 应用程序访问报告服务时,Internet Explorer 导致 IIS 500 错误

标签 c# asp.net internet-explorer iis reporting-services

我有一个 aspx 网络表单页面,它调用托管在 SQL 2012 报告服务服务器上的 SQL 2012 SSRS 报告,并使用报告查看器在 aspx 页面上显示报告。

问题是当我单击链接将参数发送到报告服务器并运行报告时页面挂起(仅在 IE 上)。在服务器上的 IIS 日志中,与请求对应的日志中存在 500 错误。服务器上的事件查看器中没有匹配的错误消息。当我在 fiddler 上查看它时,请求消失但没有任何返回。

当我尝试在 Internet Explorer 以外的任何浏览器上浏览该页面时,它都能正确显示。奇怪的是,当我第一次部署它并使用 IE 浏览它时它工作正常,但大约 5-10 分钟后就会出现问题。如果我在服务器上执行 IISRESET,它会正常工作,但在 5-10 分钟后(或者可能在一定使用量后)问题再次出现。

我没有对报告、报告服务器或调用报告的页面进行任何更改,因此这不是一个简单的 C# 错误。配置文件中唯一发生变化的是一些 Entity Framework 连接字符串。

如果有人知道要寻找什么来帮助找出造成这种情况的原因,我将不胜感激

编辑: 大约十分钟后,请求确实返回,并附有报告。因此,对于 IE 以外的任何浏览器,报告都会立即返回,并且服务器上不会出现 500 错误。对于 IE,IIS 日志中出现 500 错误,等待大约 10 到 15 分钟后服务器返返回告

编辑: 失败的 IE 请求在 IIS 日志中显示的示例:

POST/Reporting/- 443 nkennymgr 84.203.177.34 Mozilla/5.0+(Windows+NT+6.1;+WOW64;+Trident/7.0;+rv:11.0)+like+Gecko 500 0 64 130390

最佳答案

从 Global.asax 中删除以下行修复了问题

 HttpContext.Current.SetSessionStateBehavior(SessionStateBehavior.Required);

关于c# - 尝试从 Web 应用程序访问报告服务时,Internet Explorer 导致 IIS 500 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19831033/

相关文章:

Java/Selenium (ieDriver) - 如何避免在每次测试运行中重复 webapp 登录 Before Method (jUnit)

c# - 使用 LINQ 扩展将对象添加到嵌套在字典中的列表

c# - 获取一个asp :dropdownlist in code behind using C#的选中文本(不是选中值)

php - 在怪异模式下访问 ie 时禁用站点

javascript - Web Api 2 的 Angular 资源设置

javascript - 使用 'AutoPostBack=false' ,如何触发运行一些 JavaScript 后执行的回发?

css - 禁用 CSS 中的按钮?

c# - 显式关闭 DataSet 的底层连接?

c# - 为什么 WCF 有时会在生成的代理类型末尾添加 "Field"?

c# - XAML GridView 模板绑定(bind)到项目