Global.asax

本文介绍了ASP.NET中的Global.asax文件,它是如何被用来定义应用程序级别的事件处理程序的。包括Application_Start、Session_Start等事件,以及如何通过这些事件来管理应用程序状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在给Web应用程序添加新项时,选择添加“全局应用程序类(Glbal Application Class)”,会添加Global.asax文件,该文件有应用程序用于保存应用程序级的事件、对象和变量,这些都可以在应用程序的范围内访问。

ASPNET应用程序只能有一个Global.asax文件,默认如下:

<%@ Application Language="VB" %>

<script runat="server">

    Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
        '在应用程序启动时运行的代码
    End Sub
    
    Sub Application_End(ByVal sender As Object, ByVal e As EventArgs)
        '在应用程序关闭时运行的代码
    End Sub
        
    Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
        '在出现未处理的错误时运行的代码
    End Sub

    Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
        '在新会话启动时运行的代码
    End Sub

    Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)
        '在会话结束时运行的代码。 
        ' 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
        '设置为 InProc 时,才会引发 Session_End 事件。如果会话模式 
        '设置为 StateServer 或 SQLServer,则不会引发该事件。
    End Sub
       
</script>

 

 

补充,还可以在这个文件中构建如下事件:

  • Application_Start:在接受到第一个请求时调用,在这里可以给应用程序级变量赋值,或指定所有用户都必须维护的状态的理想位置。
  • Seesion_Start:在用户第一次访问应用程序时调用。
  • Application_BeginRequest:在每个请求发出之前引发。即,在请求到达服务器,且得到处理之前,会引发它,并在处理该请求之前处理它。
  • Application_AuthenticateRequest:每个请求都会触发它,允许用户为请求建立定制的身份验证。
  • Application_Error:用户跑出错误时触发。适合于提供应用程序级的错误处理,或吧错误记录到服务器的日志中。
  • Session_End:在InProc模式下运行时,此事件在终端用户退出应用程序时引发。
  • Application_End:在应用程序结束时引发。一般ASPNET很好的完成了关闭和清理剩余对象的任务。

在这个文件中还可以使用指令,

  • @Application
  • @Assembly
  • @Import

转载于:https://www.cnblogs.com/lizunicon/archive/2012/04/13/2445359.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值