ASP.NET中的Global.asax以及Web應用的生命週期
來源:互聯網
上載者:User
ASP.NET中的Global.asax以及Web應用的生命週期
Global.asax 檔案,有時候叫做 ASP.NET 應用程式檔案,提供了一種在一個中心位置響應應用程式級或模組層級事件的方法。你可以使用這個檔案實現應用程式安全性以及其它一些任務。
Global.asax 檔案被配置為任何(通過 URL 的)直接 HTTP 要求都被自動拒絕,所以使用者不能下載或查看其內容。ASP.NET 頁面架構能夠自動識別出對Global.asax 檔案所做的任何更改。在 Global.asax 被更改後ASP.NET 頁面架構會重新啟動應用程式,包括關閉所有的瀏覽器會話,去除所有狀態資訊,並重新啟動應用程式定義域。
Global.asax 檔案繼承自HttpApplication 類,它維護一個HttpApplication 對象池,並在需要時將對象池中的對象分配給應用程式。Global.asax 檔案包含以下事件:
· Application_Init:在應用程式被執行個體化或第一次被調用時,該事件被觸發。對於所有的HttpApplication 對象執行個體,它都會被調用。
· Application_Disposed:在應用程式被銷毀之前觸發。這是清除以前所用資源的理想位置。
· Application_Error:當應用程式中遇到一個未處理的異常時,該事件被觸發。
· Application_Start:在HttpApplication 類的第一個執行個體被建立時,該事件被觸發。它允許你建立可以由所有HttpApplication 執行個體訪問的對象。
· Application_End:在HttpApplication 類的最後一個執行個體被銷毀時,該事件被觸發。在一個應用程式的生命週期內它只被觸發一次。
· Application_BeginRequest:在接收到一個應用程式請求時觸發。對於一個請求來說,它是第一個被觸發的事件,請求一般是使用者輸入的一個頁面請求(URL)。