Ошибка истечения сеанса ASP.NET при просмотре отчета - PullRequest
2 голосов
/ 11 октября 2010

Я получаю сообщение об ошибке «Сеанс ASP.NET истек» при просмотре отчета (службы отчетов SQL Server) с помощью элемента управления средства просмотра отчетов. иногда он работает нормально, а иногда я получаю эту ошибку, он отлично работает в Dev, но не в тестовой среде. Пожалуйста, дайте мне знать, если у вас есть какие-либо подсказки. заранее спасибо. Вот код для элемента управления просмотра отчетов.

ReportViewer1.ServerReport.ReportServerUrl = новый Uri (System.Configuration.ConfigurationManager.AppSettings ["ReportServerUrl"]);

    ReportViewer1.ServerReport.ReportPath = System.Configuration.ConfigurationManager.AppSettings["ReportPath"];
    ReportViewer1.ServerReport.SetParameters(new List<ReportParameter> { new ReportParameter("key", "value") });
    ReportViewer1.DataBind();

Ответы [ 3 ]

0 голосов
/ 18 октября 2010

У меня была проблема с этими симптомами в течение нескольких месяцев на рабочем сервере, и я никогда не мог надежно воспроизвести ее на любом сервере разработки или тестирования. Я сходил с ума, пока какое-то изворотливое изменение конфигурации, наконец, не заставило ASP.NET регистрировать новое предупреждение всякий раз, когда произошла ошибка истечения этого сеанса.

Короче говоря, моей проблемой была ошибка в средстве просмотра отчетов. Это ошибка в Connect, и я добавил обходной путь, который может вам помочь:

https://connect.microsoft.com/VisualStudio/feedback/details/556989/

Прежде чем делать какие-либо радикальные обходные пути, сначала проверьте Event Viewer на тестовом сервере и найдите предупреждение ASP.NET в момент возникновения этой ошибки. Посмотрите, упоминает ли событие параметр 'IterationId'.

0 голосов
/ 27 октября 2010

Я исправил это, установив для AsyncRendering значение false для элемента управления средства просмотра отчетов.просто временное решение, пока я не найду правильное решение.

0 голосов
/ 11 октября 2010

Взгляните на пул приложений в iis, проверьте дополнительные параметры-> модель процесса-> время простоя (минуты). Установите это выше, чем 20 минут. Похоже, рабочий процесс завершает работу из-за простоя. Часто это случается с тестовыми системами, потому что они не получают столько ударов, чтобы остановить включение простоя.

Cheers Tigger

...