Global.asax

在给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
posted @ 2012-04-13 10:30  怒杀神  阅读(283)  评论(0编辑  收藏  举报