转载 http://www.cnblogs.com/tech-bird/p/3629585.html
ASP.NET的配置文件
Global.asax--全局应用程序文件
Web.config--基于XML的应用程序配置文件
global.asax是一个文本文件,它提供全局可用代码。这些代码包括应用程序的事件处理程序以及会话事件、方法和静态变量。有时该文件也被称为应用程序文件。
global.asax文件中的任何代码都是它所在的应用程序的一部分。每个应用程序在其根目录下只能有一个global.asax文件。然而,这个文件是可选的。如果没有global.asax文件,应用程序将对所有事件应用由HttpApplication类提供的默认行为。
Global.asax文件主要有两种用途:
定义应用程序级和会话级的变量、对象和数据;
对应用程序内发生的基于应用程序和会话的事件处理程序。
Global.asax文件主要用来处理更高级别的应用程序事件,如Application_Start、Application_End、Session_Start、Session_End等。开发人员使用位于特定Web应用程序根目录下的Global.asax文件来创作此逻辑。第一次激活或请求应用程序命名空间内的任何资源或URL时,ASP.NET会将其Global.asax文件编译为从HttpApplication类派生而来的一个类。
Global.asax文件本身是可以配置的,通过禁止对Global.asax文件的未经授权访问,可以自动拒绝任何对其URL的请求。
当修改处于活动状态的Global.asax文件时,ASP.NET将关闭所有的会话,清楚对应用程序的所有当前请求,并向所有监听者(Listener)激发Application_End事件,然后重新启动应用程序。由于这个操作过程中,系统会关闭所有的会话,清空被存储的所有状态信息,因此,应该在Web应用程序没有流量或流量非常低的时候修改Global.asax文件。
可以统计当前网站的访问人数
为防止应用程序用户下载应用程序而看到源代码,ASP.NET缺省配置为阻止用户查看global.asax的内容。如果有人在浏览器输入以下URL:
http://localhost/progaspnet/Global.asax
这将会收到一个403(禁止访问)错误信息或者类似的信息如:
This type of page is not served。
提示:简单而言,web.config文件与global.asax有些类似的地方。如果这个文件被更改,应用程序将自动“重启”。同样,也不可能在浏览器中查看web.config文件。
MVC中
此文件是
namespace MvcApplication11 { // 注意: 有关启用 IIS6 或 IIS7 经典模式的说明, // 请访问 http://go.microsoft.com/?LinkId=9394801 public class MvcApplication : System.Web.HttpApplication { protected void Application_Start() { //注册MVC应用程序中的所有区域 AreaRegistration.RegisterAllAreas(); WebApiConfig.Register(GlobalConfiguration.Configuration); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); } } }
分别注册
BundleConfig.cs
http://www.cnblogs.com/tech-bird/p/3629401.html
WebApiConfig.cs
http://www.cnblogs.com/tech-bird/p/3629611.html