在ASP.NET中,我正在尋找一種方法來審計離開應用程序的用戶。具體而言,當用戶的會話因任何原因(不一定是因爲調用session.abandon而被拋棄/銷燬)時,我想在SQL Server的審計表中插入「註銷」記錄。如何在用戶離開ASP.NET應用程序時進行審計
I有一個'SessionHelper'類來管理會話設置者/獲取者。
我試着在Global.asax中的Session_End中回發,但它從來沒有在超時過期後解僱這個事件。
我試過在SessionHelper類中重寫'finalize',並在類被銷燬時做到這一點,但它並沒有觸發該事件。
我想嘗試在SessionHelper中實現IDisposable,但我不知道在哪裏調用它,以便它總是被調用。
審覈離開您的ASP.NET應用程序的用戶的正確方法是什麼?
謝謝!
我做了類似的事情,我使用基於sql的會話處理,並在持有我的會話數據的表中擁有最後訪問的列。每次修改會話記錄時都會存儲一個存儲過程,該過程會清理不活動時間長於預定義TIMEOUT值的任何未使用會話行的表。 – stephenbayer 2008-10-14 15:54:41