我正在ASP.net 3.5 C#中工作。我想要做的是當Session_End事件被調用時,我想更新當前用戶已經以任何方式註銷的數據庫中登錄的用戶狀態(手動註銷,會話超時等,它調用Session_End事件)。問題是我不是罷了維護用戶ID。我無法訪問會話變量,因爲會話已經過期,cookies也爲我工作。會話結束事件
請提出解決方案。
非常感謝
問候 維韋克
我正在ASP.net 3.5 C#中工作。我想要做的是當Session_End事件被調用時,我想更新當前用戶已經以任何方式註銷的數據庫中登錄的用戶狀態(手動註銷,會話超時等,它調用Session_End事件)。問題是我不是罷了維護用戶ID。我無法訪問會話變量,因爲會話已經過期,cookies也爲我工作。會話結束事件
請提出解決方案。
非常感謝
問候 維韋克
嘗試推動用戶名到ViewState的,如果你有從所有網頁繼承或者如果您使用母版,那麼它應該是很容易推一的BasePage用戶ID在每個頁面上查看狀態。 Cookies應該超越會話生命。您是否將Cookie的到期時間設置爲?
您應該可以在Session_End事件中訪問會話變量。存儲在會話中的所有數據在Session_End事件完成後被刪除。但你應該小心,因爲會議是爲所有參觀者創建的。如果您將UserID存儲在會話中,則在Session_End中可以爲空,如果有人查看了登錄頁面但未登錄。不建議將會話超時設置爲天,因爲這些會話可能會填滿所有服務器內存。
是的我設置14天的到期時間。此外,我正在使用母版頁。 – Vivek 2011-04-28 14:33:54