2012-12-24 25 views
0

我必須維護數據庫中的用戶登錄和註銷時間。如果我使用登錄global.asax中的Application_End()進行登錄,對於登錄而言很簡單,但對於登出。它給了我例外。如何確定在asp.net c#中的用戶註銷?

我的ASAX文件編號:

Application_End() 
{ 
    HttpCurrent.Context.Session.Abandon(); 
    LogUserLogoutTimeToDatabase(); 
} 
+0

什麼例外,它給你?這可能是問題的一個指標。 – samjudson

+0

註銷是否有與之相關的特定操作?應用程序的結束可能意味着你的所有用戶都會失去他們的會話,這不是註銷的唯一方式,我猜測。 – ryadavilli

+0

嘗試'Session_End()' – codingbiz

回答

0

您將需要使用Session_End()。用戶可以簡單地關閉他們的瀏覽器,並且對他們來說,他們現在被「註銷」 - 但是沒有任何提醒服務器他們已經註銷,除非他們在關閉瀏覽器之前點擊了「註銷」按鈕。所以,一旦他們的會話超時,Session_End()事件將被觸發,您可以在那裏捕獲您的註銷。

0

你是最好的,第一選擇將是在應用程序退出按鈕。 之後,您可以在很短的會話時間內使用會話超時事件。

Application_End在應用程序關閉時觸發,但不在服務器崩潰期間觸發。

0

實現此目的的最好方法是,使用onClick事件註銷按鈕

當註銷按鈕,存儲在database那個時候用戶點擊...