2010-08-04 78 views
3

此问题与Microsoft ReportViewer: Session Expired Errors有关。不幸的是,接受的答案并不能解决我的问题。有问题的报表查看器正在服务器场中运行,每个应用程序池中都运行着多个工作进程。会话模式是SQL。我已经实现了IReportServerConnection。Microsoft ReportViewer - ASP.NET会话已过期

我遇到的问题是会话立即恢复过期。我可以在一个盒子上复制它,所以我认为这与多个工作进程有关。我正在使用RDL文件,我不认为ReportViewer甚至需要启用会话。所以我的问题是:我如何摆脱这个错误?如果是通过为reportviewer禁用会话,我该怎么做?我认为实施IReportServerConnection可以解决这个问题。文件似乎很稀疏。任何帮助是极大的赞赏。

这里是异常和堆栈跟踪:

消息:ASP.NET会话已过期
进程名称:Microsoft.ReportViewer.WebForms
类型:Microsoft.Reporting.WebForms.AspNetSessionExpiredException
堆栈跟踪:在Microsoft.Reporting.WebForms.ReportDataOperation..ctor()在Microsoft.Reporting.WebForms.HttpHandler.GetHandler(字符串operationType)在Microsoft.Reporting.WebForms.HttpHandler.ProcessRequest(HttpContext的背景下)

回答

0

我结束了设置AsyncRendering到假。我已经读过这个解决方案,但希望找到一个替代方案。网络花园/农场可能还有其他的选择,但这是我唯一能在有限的时间内想出来的选择。

http://msdn.microsoft.com/en-us/library/ms252090%28v=VS.90%29.aspx

+0

AsyncRendering设置为false并不能解决我的问题。我正在使用VS2013中使用的ReportViewer的最新版本。我无法相信这个bug还没有被修复。 (我正在考虑放弃ReportViewer网页控制,并可能将用户直接重定向到SSRS服务器报告URL。) – ClearCloud8 2014-03-10 19:04:57

+0

对不起。我记得ReportViewer存在更多问题。这是非常令人失望的。 – kakridge 2014-03-10 22:30:03