Create and Use Application Level Events in ASP.NET
Introduction
The Global.asax, also known
as the ASP.NET application file, is located in the root directory of an ASP.NET
application. This file contains code that is executed in response to application-level
and session-level events raised by ASP.NET or by HTTP modules. You can also
define ‘objects’ with application-wide or session-wide scope in the Global.asax
file. These events and objects declared in the Global.asax are applied to all
resources in that web application. The Global.asax is an optional file. If a
user requests the Global.asax file, the request is rejected.
About
Global.asax page
Adding a Global.asax to your
web project is quiet simple. Open Visual Studio 2005 or 2008 > Create a new
website > Go to the Solution Explorer > Add New Item > Global
Application Class > Add.
Now we will have three Application Event Handlers and two Session Event Handlers.
Here is the list of Application Event Handlers:
Now we will have three Application Event Handlers and two Session Event Handlers.
Here is the list of Application Event Handlers:
Sub
Application_Start(ByVal sender As Object, ByVal e As EventArgs)
' Code
that runs on application startup
End Sub
Sub
Application_End(ByVal sender As Object, ByVal e As EventArgs)
' Code
that runs on application shutdown
End Sub
Sub
Application_Error(ByVal sender As Object, ByVal e As EventArgs)
' Code
that runs when an unhandled error occurs
End Sub
Here is the list of Session Event Handlers:
Sub
Session_Start(ByVal sender As Object, ByVal e As EventArgs)
' Code
that runs when a new session is started
End Sub
Sub
Session_End(ByVal sender As Object, ByVal e As EventArgs)
' Code
that runs when a session ends.
' Note:
The Session_End event is raised only when the sessionstate mode
' is set
to InProc in the Web.config file. If session mode is set to StateServer
' or
SQLServer, the event is not raised.
End Sub
Note: About Session Event Handlers will learn in next article.
Application
Event Handlers
Application_Start(): It gets
fired when the first resource is requested from the web server and the web
application starts. Application_End(): It gets fired when the web application
ends. Application_Error(): It gets fired when an error occurs.
Working
with Global.asax file:
<%@
Application Language="VB" %>
<script
runat="server">
Sub Application_Start(ByVal sender As
Object, ByVal e As EventArgs)
Application("HitCount") = 0
' Code that runs on application startup
End Sub
Sub Application_End(ByVal sender As Object,
ByVal e As EventArgs)
' Code that runs on application shutdown
End Sub
Sub Application_Error(ByVal sender As
Object, ByVal e As EventArgs)
' Code that runs when an unhandled
error occurs
End Sub
Sub Session_Start(ByVal sender As Object,
ByVal e As EventArgs)
' Code that runs when a new session is
started
End Sub
Sub Session_End(ByVal sender As Object,
ByVal e As EventArgs)
' Code that runs when a session ends.
' Note: The Session_End event is raised
only when the sessionstate mode
'
is set to InProc in the Web.config file. If session mode is set to StateServer
' or SQLServer, the event is not
raised.
End Sub
</script>
Working
with Default.aspx file:
<%@
Page Language="VB" AutoEventWireup="false"
CodeFile="Default.aspx.vb" Inherits="_Default" %>
CodeFile="Default.aspx.vb" Inherits="_Default" %>
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml" >
<head
runat="server">
<title>Create and Use Application
Level Events in ASP.Net</title>
</head>
<body>
<form id="form1"
runat="server">
<div>
<strong>
Total Hits:
</strong>
<asp:Label ID="Label1"
runat="server"
Text="Label" Width="247px" Font-Size="Large" ForeColor="Red">
Text="Label" Width="247px" Font-Size="Large" ForeColor="Red">
</asp:Label>
</div>
</form>
</body>
</html>
Working
with Default.aspx.vb file:
Protected
Sub Page_Load(ByVal sender As Object,
ByVal e As System.EventArgs) Handles Me.Load
ByVal e As System.EventArgs) Handles Me.Load
Application("HitCount") =
Application("HitCount") 1
Label1.Text =
Application("HitCount")
End Sub
Comments
Post a Comment