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