SSRS ReportViewer:ASP.NET会话已过期或无法找到

时间:2014-03-31 19:31:22

标签: session reporting-services reportviewer

我们当前的MVC 4应用程序(Windows 7)使用IFRAME显示MS报告查看器控件(版本10.0.0.0)。我正在使用SSRS Web服务从根文件夹中检索文件夹和报告的列表。使用我们的自定义UI查询和显示每个报告的参数。参数将传递回reportviewer以呈现报告。在本地运行Web和SSRS服务器(使用IE 11.096和Chrome 33.0.1750.154)时,一切都很完美,但是在部署到我们的测试Web和ssrs服务器之后,报表查看器似乎开始呈现(显示加载gif)但是然后显示消息“ASP .NET会话已过期或无法找到。”

有关此问题的数十篇论坛帖子。到目前为止,我已经尝试并验证了以下内容,但没有取得任何成功:

  • 应用程序正在使用SessionMode = SQLServer,cookieless = false
  • 在web.config中增加超时= 3000
  • 设置ReportViewer AsyncRendering = false
  • 设置ReportViewer KeepSessionAlive = true
  • 检查报告查看器aspx.cs
  • 的Page_load中的回发
  • 检查IIS日志是否有错误

  • 在Reporting Server事件日志中发现错误:

  • **报表服务器(MSSQLSERVER)无法加载SQLPDW扩展
  • **报表服务器(MSSQLSERVER)无法加载TERADATA扩展名。
  • **这些错误似乎对会话问题没有任何影响

  • 修改报表服务器(ReportServer)上的web.config SessionState的=在

  • 修改了报表服务器(ReportManager)上的web.config SessionMode = InProc使用SessionMode = SQLServer
  • 检查了ReportingServer日志(注意到所有成功的Web服务 呼叫)
  • 在应用程序池中验证了一个工作进程

  • 查看框架源时,会显示一条消息“Report Viewer Web 控制HTTP处理程序尚未在应用程序中注册...“ 但是存在以下处理程序条目:

  • add path =“Reserved.ReportViewerWebControl.axd”verb =“*” 类型=“Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms,Version = 10.0.0.0,Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a“validate =”false“/>
  • add name =“ReportViewerWebControlHandler” preCondition =“integratedMode”verb =“*” 路径= “Reserved.ReportViewerWebControl.axd” 类型=“Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms,Version = 10.0.0.0,Culture = neutral, 公钥= b03f5f7f11d50a3a“
  • **此消息也会在本地显示(不确定是否有问题)

  • 重新启动IIS / ReportServer

  • 使用报表管理器在报表服务器上执行报表
  • 报告在报告管理器中外部执行正常
  • 报告在本地运行的MVC应用程序中执行正常

  • 当我为reportViewer创建事件处理程序时 (OnReportError =“HandleError”)此处理程序中的代码未获得 执行后,观众(使用Chrome)显示空白页面(没有 显示错误)使用IE发生了相同的结果(没有错误 显示)但工具栏图像也未对齐/禁用。

我已经尝试了大多数(如果不是所有)我发现的建议。在任一浏览器中,一切都在本地完美运行发布错误的时间是发布到服务器。感谢您的任何见解。

0 个答案:

没有答案