12 May 2013

Global.asax file in asp.net

Global.asax file in asp.net

The Global.asax file, also known as the ASP.NET application file, is an optional file that contains code for responding to application-level events raised by ASP.NET or by HttpModules. 

The Global.asax file is optional. If you do not define the file, the ASP.NET page framework assumes that you have not defined any application or session event handlers.


The Global.asax file itself is configured so that any direct URL request for it is automatically rejected; external users cannot download or view the code written within it.

There can be only one Global.asax file per application and it should be located in the application's root directory only.



The Global.asax contains two types of events those are
Events which are fired for every request
Events which are not fired for every request


Events which are fired for every request

Application_BeginRequest() – This event raised at the start of every request for the web application.


Application_AuthenticateRequest – This event rose just before the user credentials are authenticated. We can specify our own authentication logic here to provide custom authentication.


Application_AuthorizeRequest() – This event raised after successful completion of authentication with user’s credentials. This event is used to determine user permissions. You can use this method to give authorization rights to user. 


Application_ResolveRequestCache() – This event raised after completion of an authorization request and this event used in conjunction with output caching. With output caching, the rendered HTML of a page is reused without executing its code.


Application_AcquireRequestState() – This event raised just before session-specific data is retrieved for the client and is used to populate Session Collection for current request.


Application_PreRequestHandlerExecute() – This event called before the appropriate HTTP handler executes the request.


Application_PostRequestHandlerExecute() – This event called just after the request is handled by its appropriate HTTP handler.


Application_ReleaseRequestState() – This event raised when session specific information is about to serialized from the session collection.


Application_UpdateRequestCache() – This event raised just before information is added to output cache of the page.


Application_EndRequest() – This event raised at the end of each request right before the objects released. 


Now we will see


Events which are not fired for every request


Application_Start() – This event raised when the application starts up and application domain is created.


Session_Start() – This event raised for each time a new session begins, This is a good place to put code that is session-specific.


Application_Error() – This event raised whenever an unhandled exception occurs in the application. This provides an opportunity to implement generic application-wide error handling.


Session_End() – This event called when session of user ends.


Application_End() – This event raised just before when web application ends.


Application_Disposed() – This event fired after the web application is destroyed and this event is used to reclaim the memory it occupies.



No comments:

Post a Comment

Comments Welcome