我的問題是,一旦Session_End在我的Global.asax中執行,HttpContext.Current
對象不再存在 - 可能會像預期的那樣,我會想象的。所以,我試圖做的是一旦會話結束,爲當前登錄的用戶更新我的登錄表並將他們的LoggedIn狀態設置爲False。這裏是我的Session_End中:ASP.NET MVC4 - Session_End - 如何在Global.asax的Session_End中獲取當前登錄的用戶名?
protected void Session_End(object sender, EventArgs e)
{
Helpers.OperationContext.UpdateIndividualLogin();
}
正如你可能已經猜到了,我可以嘗試通過:
System.Web.HttpContext.Current.User.Identity.Name
但此對象不再存在,因爲我只能想象,它已經被處理掉。那麼,有什麼方法可以抓住當前(或之前)當前的用戶名嗎?
只是一個評論:如果您正在考慮稍後部署到Web場或在SQL Server或其他變體中使用會話狀態,請注意Session_End事件可能不會在某些配置上觸發 – 2013-04-10 22:55:33
感謝那篇信息。我今晚的研究也發現了這些信息。 – 2013-04-11 02:05:13