正文

如何编写global.asax(转)2007-04-14 19:01:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/lym51/24895.html

分享到:

为了编写用户界面的应用程序,开发者可以把应用程序标准的逻辑和时间处理的代码加到Web Application 里面。这些代码不产生用户界面,也不想英单个得页面的请求。事实上,这些代码处理更高水平的事件,如Application_Start, Application_End, Session_Start, Session_End,等等。开发者通过放在web应用程序根目录下面的Global.asax来响应这些事件。               Asp.net通过一个动态的.NET FrameWork 类自动解析和编译这个文件,这个类就是HttpApplication基类,在第一时间里面,在这个文件里面的应用程序的资源将会被响应。               首先,在包含有请求的应用程序名字空间中被访问之前,Global.asax将被解析和编译成.NET Framework的一个类。这个文件本身有拒绝被访问的配置。               下面我们来看看这个文件里面的具体内容,首先我们声明这个文件的使用语言、运行环境:               <script language=”VB” runat=server>        ‘相关方法        </script>   然后我们就可以定义各种方法了,               Sub Application_Start()               ‘方法的属性等 End Sub   如果事件处理代码需要用到名字空间,我们可以这样来引用它:               <%@  Import  Namespace=”System.Data.SQL”%>   下面我们来看看这个文件的具体应用,首先我们在我们的Web Server上建立一个Global.asax文件,我们在里面加上我们的代码:   <script language=”VB” runat=server> ‘相关方法   Sub Application_Start()               ‘方法的属性等 End Sub   Sub Application_Start(Sender As Object, E As EventArgs)        Application.Lock()        Application("counter") = CType(Application("counter") + 1, Int32)        Application.UnLock()    End Sub       Sub Application_End(Sender As Object, E As EventArgs)         ' Clean up application resources here     End Sub       Sub Session_Start(Sender As Object, E As EventArgs)         Response.Write("Session 正在启动...<br>")     End Sub       Sub Session_End(Sender As Object, E As EventArgs)         ' Clean up session resources here     End Sub        </script>   当然,我们还要配置Config.web,用来指定出错信息的打印页面。根据上面我们配置Config.web的经验,我们很容易的就可以对这个文件进行配置:          <configuration>     <customerrors mode="on" defaultredirect="error.htm" />     <globalization requestencoding="gb2312" responseencoding="gb2312" /> </configuration> 第二句话就是配置我们指定的出错页面语句。我们写两个页面来实现它,一个为出错页面,一个为实现这个功能的aspx页面。出错页面很简单的,就是报告程序出错时显示的信息,我们就写“在config.web里面配置的连接!“,是经过aspx页面甩出来的。 在aspx页面,我们用下面的语句来响应出错按钮点击事件:   Sub Error_Click(Sender As Object, E As EventArgs)                ‘甩出异常!          throw New Exception() End Sub   以外我们的响应Session的方法用下面的语句来说明:               Sub Session_Click(Sender As Object, E As EventArgs)          Session.Abandon()          Response.Redirect("global.aspx") End Sub   下面是完整的代码:               <html>    <script language="VB" runat="server">       '页面导入       Sub Page_Load(Sender As Object, E As EventArgs)          Response.Write("正在装入页面...<br>")       End Sub         'Session事件       Sub ssaidy(Sender As Object, E As EventArgs)          Session.Abandon()          Response.Redirect("global.aspx")       End Sub         '响应错误方法       Sub esaidy(Sender As Object, E As EventArgs)         '抛出异常          throw New Exception()       End Sub   </script>   <body>    <br><br><br>    <center>     <form runat="server">       <input type="submit" Value="刷新这个页面" runat="server"/>       <input type="submit" OnServerClick="ssaidy" Value="结束这个Session" runat="server"/>       <input type="submit" OnServerClick="esaidy" Value="错误表示" runat="server"/><p>       <hr>     </form>     </center>     <br><br>   </body> </html>

阅读(9428) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册