關鍵字:ASP.NET 架構
個類直接繼承自HttpApplication:
public class Global : System.Web.HttpApplication
HttpApplication的主要職責是作為Http管道的事件控制器,所以它的接口主要包含的是事件.事件掛接是非常廣泛的,包括以下這些:
·BeginRequest
·AuthenticateRequest
·AuthorizeRequest
·ResolveRequestCache
·AquireRequestState
·PreRequestHandlerExecute
·…Handler Execution…
·PostRequestHandlerExecute
·ReleaseRequestState
·UpdateRequestCache
·EndRequest
每個事件在Global.assx文件中以Application_前綴開頭的空事件作為實現.例如, Application_BeginRequest(), Application_AuthorizeRequest()..這些處理器為了便于使用而提供因為它們是在程序中經常被使用的,這樣你就不用顯式的創建這些事件處理委托了。
理解每個ASP.NET虛擬目錄在它自己的應用程序域中運行,而且在應用程序域中有多個從ASP.NET管理的池中返回的HttpApplication實例同時運行,是非常重要的,這是多個請求可以被同時處理而不互相妨礙的原因。
查看列表4來獲得應用程序域,線程和HttpApplication之間的關系。
列表4-顯示應用程序域,線程和HttpApplication實例之間的關系。
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
this.ApplicationId = ((HowAspNetWorks.Global) HttpContext.Current.ApplicationInstance).ApplicationId ;
文章來源于領測軟件測試網 http://www.kjueaiud.com/