首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

global.asax?app.config?webconfig?

2013-09-29 
global.asax?app.config?webconfig??一、Global.asax 1、global.asax是什么? 一个文本文件,至于它包含写什么

global.asax?app.config?webconfig??

一、Global.asax

 

1、global.asax是什么?

 

一个文本文件,至于它包含写什么内容?顾名思义,global肯定是掌管一个应用程序(application)的全局性的东西,例如应用程序的事件处理程序以及会话事件、方法和静态变量。So,一个应用程序(application)的根目录中就只能有一个Global文件。

 

 2、可选文件

 

Global 类

看global.asax文件头:publicclass Global : HttpApplication。发现这个文件中的global类是继承自 HttpApplication类。也就是说这个global中类都是来自HttpApplication,So,这个文件是可选的。也就是说,如果没有global.asax这个类,应用程序(Application)的全局性东西将由HttpApplication类来默认提供。

 

3、global中的常用事件

 

Application_start;Application_end;Session_start;Session_end;

 

Application_Disposed:当CLR从内存中移除应用程序时触发。

 

Application_Error:无论在应用程序中何时何处发生未处理的错误都将触发。它提供了一个实现通用应用程序错误处理的好机会。

 

只写了这几个事件,是因为现阶段,我只学到了ASP.NET常用的几个内置对象,然后再看global 中的事件,Application,session这不是都是对全局事件的处理吗??

 

 

 

二、global.asax & Web.config

 

1、级别不同

 

Global.asax仅且只能处于应用程序(application)的根目录中;web.config则不同,处于应用程序根目录亦可,次级目录亦可。

 

2、作用不同

 

Global.asax是设定应用程序(application)中事件,控制应用程序(application)的执行,只有当应用程序(application)包含的事件发生变化时,才会执行global.axas文件;而web.config 是用来对应用程序(application)进行设置的,每个页面启动时都会先运行web.config文件。

 

3、相同

 

两者都不被外界访问。

 

这个可以结合下面的这段话理解:一个应用程序(application)中只会初始化一个httpApplication类,但是会有N多个web pages.而这个Global.asax文件就是主管一个Application类的大方向控制,所以当我们登陆一个应用程序时,在这个应用程序的页面间来回跳转,有些信息是保持,例如:session是不变的;但是每个页面需要具体的web.config来进行详细配置。如果某个页面没有web.config 页面,也不是问题,它汇集成子父类的web.config 页面,因为在应用程序(application)的根目录下有一个web.config文件。其他子程序可以继承这个web文件。

 

 

三、Web.config & App.config

 

这个就更好说了。从C/S编程到B/S编程的同学就很容易对比了。

书上说:app.config,是桌面应用程序的配置文件;

web.config是ASP.NET应用程序的配置文件。

我说:其实这两个文件是一样的,只是在C/S中叫“App.config",在B/S中叫做“Web.config"

 

 

 

 

热点排行