The Global.asax file, which is derived from the HttpApplication class, maintains
a pool of HttpApplication objects, and assigns them to applications as needed.
The Global.asax file contains the following events:
Application_Init: Fired when an application initializes or is first
called. It is invoked for all HttpApplication object instances.
Application_Disposed: Fired just before an application is destroyed. This
is the ideal location for cleaning up previously used resources.
Application_Error: Fired when an unhandled exception is encountered
within the application.
Application_Start: Fired when the first instance of the HttpApplication
class is created. It allows you to create objects that are accessible by all
HttpApplication instances.
Application_End: Fired when the last instance of an HttpApplication class
is destroyed. It is fired only once during an application's lifetime.
Application_BeginRequest: Fired when an application request is received.
It is the first event fired for a request, which is often a page request (URL)
that a user enters.
Application_EndRequest: The last event fired for an application request.
Application_PreRequestHandlerExecute: Fired before the ASP.NET page
framework begins executing an event handler like a page or Web service.
Application_PostRequestHandlerExecute: Fired when the ASP.NET page
framework has finished executing an event handler.
Applcation_PreSendRequestHeaders: Fired before the ASP.NET page framework
sends HTTP headers to a requesting client (browser).
Application_PreSendContent: Fired before the ASP.NET page framework send
content to a requesting client (browser).
Application_AcquireRequestState: Fired when the ASP.NET page framework
gets the current state (Session state) related to the current request.
Application_ReleaseRequestState: Fired when the ASP.NET page framework
completes execution of all event handlers. This results in all state modules to
save their current state data.
Application_ResolveRequestCache: Fired when the ASP.NET page framework
completes an authorization request. It allows caching modules to serve the
request from the cache, thus bypassing handler execution.
Application_UpdateRequestCache: Fired when the ASP.NET page framework
completes handler execution to allow caching modules to store responses to be
used to handle subsequent requests.
Application_AuthenticateRequest: Fired when the security module has
established the current user's identity as valid. At this point, the user's
credentials have been validated.
Application_AuthorizeRequest: Fired when the security module has verified
that a user can access resources.
Session_Start: Fired when a new user visits the application Web site.
Session_End: Fired when a user's session times out, ends, or they leave
the application Web site.