2013-02-06 58 views
0

我沒有寫這行到web.config中如何增加SessionTimeOut

<sessionState timeout="540"/>

,但我的客戶端的會話20-40分鐘

內到期是否有任何其他方式增加SessionTimeout 8 -9小時?

感謝

+0

這不是一個直接的答案,但取決於網站期望的訪問者數量,我會非常小心地增加會話超時。 20分鐘的部分原因是爲了儘可能降低服務器資源使用率......保持會話信息數小時不會有幫助 – freefaller

回答

0

也許你能折騰的東西在你的Global.asax.cs文件,重置過期。我會把它放在Application_PreRequestHandlerExecute方法/事件中。

var cookie = Request.Cookies["ASP.NET_SessionId"]; 
    cookie.Expires = DateTime.Now.AddHours(8); 
    Response.Cookies.Set(cookie); 
0

這很可能是您的IIS應用程序池正在回收。默認情況下,它會在閒置一段時間後關閉工作進程。

您可以使用SQL Server backed session state,或者您可以增加工作進程空閒超時限制。