Asp.net-Mvc
ASP.NET MVC 中何時呼叫 Session_End()?
我
Web.Config在 ASP.NET MVC 2 項目中配置了我的文件如下:<sessionState mode="InProc" timeout="1"/>並在中添加以下內容
Global.asax.cs:protected void Session_End(object sender, EventArgs e) { System.Diagnostics.Debug.WriteLine("Session_End"); } protected void Session_Start(object sender, EventArgs e) { System.Diagnostics.Debug.WriteLine("Session_Start"); }
Session_Start()當新使用者訪問網站時呼叫。我本來希望Session_End()在 1 分鐘的空閒時間後被呼叫,但事實並非如此。我錯過了什麼嗎?
耐心點。應該呼叫該事件,但不一定在超時後立即呼叫。
您可以從瀏覽器嘗試:開始會話,等待 > 1 分鐘,以某種方式進行回發
這應該有助於驗證 Timeout 是否有效,我認為您也會看到 SessionEnd 發生在那個時候。否則,只需等待並開始其他一些會話。系統會在某個時候出現或呼叫它。
記住這一點:
如果您不將任何內容保存到會話中,則 session_end 將不會觸發。如果您在第一個請求中將數據保存在會話中,並在同一請求中呼叫放棄,則 session_end 也不會觸發。
希望這可以幫助!
噸
順便說一句: ASP.NET Session_End 事件未觸發