2016-11-29 100 views
0

我的組織有一個ASP.NET應用程序,它是我們的SSRS報告的包裝。這個應用程序基本上只是爲用戶提供一系列下拉菜單來導航到他們的報告,而不是讓用戶通過默認的SSRS報告管理器頁面導航到報告。ASP.NET ReportViewer錯誤「ASP.NET會話已過期或無法找到」

在此應用程序中,我們遇到了用戶遇到錯誤,尤其是錯誤:「ASP.NET會話已過期或無法找到」。嘗試更改報告參數並重新運行報告後,只有幾分鐘的查看報告後才發生這種情況。

我試圖在我的ReportViewer控件中使用KeepSessionAlive =「true」`,並在Web.config中擴展Session Timeout值。這些都不能解決這個錯誤。

回答

0

按上可用的會話狀態模式MSDN文章:https://msdn.microsoft.com/en-us/library/ms178586.aspx

我們結束了從默認的是InProc模式爲StateServer模式切換這一點,並一直無法重現錯誤,因爲。儘管使用StateServer模式有一個額外的好處,但我們必須啓用服務器上的ASP.NET狀態服務,將其設置爲自動啓動類型,然後更新我們的web.config sessionState值:

<sessionState timeout="120"/> 

到:

<sessionState mode="StateServer" stateConnectionString="tcpip=localhost:42424" timeout="120"/>