2016-12-16 32 views

回答

3

Session_StartSession_End只是鉤子。它們不是必需的,並且會話的功能不受這種或那種方式的影響,無論您是否在Global.asax中覆蓋它們。

我不確定你的超時問題的根源是什麼,但是如果它們被糾正了,那麼它是通過你在這些重寫中做的任何事情完成的,而不是僅僅存在重載。

更多的技術細節

我暗示了它上面,但我想我應該更加明確。從Global.asax派生的類System.Web.HttpApplication在其上定義了許多「鉤子」。實質上,這些只是允許您在關鍵時間點注入功能的佔位符。換句話說,當ASP.NET需要創建會話時,作爲該操作的一部分,它會調用Session_Start。默認實現什麼都不做,但是如果你在你的派生類中覆蓋它,那麼該覆蓋中的代碼就會運行。

+0

感謝您的解釋Chris –

-1

如果您想跟蹤會話開始時間,您可以將會話變量添加到Session_Start中,如「SessionStartTime」。

相關問題