2010-01-08 166 views
2

我正在學習ASP.net成員資格功能。避免ASP.net成員中的併發登錄(註銷前登錄會話)

我想知道如何實現,以便以後登錄會話註銷前登錄會話,以避免併發登錄。我知道如何檢查用戶是否在線(通過Membership.IsOnline())並註銷當前用戶(通過FormsAuthentication.SignOut())。但我不知道如何註銷以前的登錄會話。

我可以閱讀的任何代碼或參考?

回答

1

我不認爲有明確的方法來做到這一點。

實現它的一種方法是在用戶登錄時在緩存中存儲某種登錄令牌(會話ID?)。每當用戶登錄時撤消舊令牌,然後添加一個HttpModule,它檢查這個令牌......當請求進入時不匹配,將用戶登出。或者,將此邏輯放在母版頁或所有應用程序頁面繼承的頁面對象中。

+0

這意味着我需要的會話ID存儲在某個地方。 Applicaton [「login」] = Session.SessionID或Cache [「login」] = Session.SessionID或Database?哪個更好? – Billy 2010-01-11 12:48:35

+0

我會使用緩存,以便在到期時自動清理。 – Bryan 2010-01-11 19:29:44

+0

你使用MVC嗎? – rodmjay 2013-03-28 11:14:56