Asp.Net Mvc 学习笔记之 Global.asax.cs

1.程序配置与入口

  Global.asax.cs文件  是全局配置文件

  类中的Application_Start()方法是程序的入口,可在此方法中配置程序的各种服务

关键服务

 ①RegisterAllAreas

 注册所有区域 Area ,MVC中有Area的概念,在庞大复杂的项目中,可以使用Area将各个模块分割到每个Area中,每个Area有不同的路由规则,即路由地址不同。每个Area代表应用程序的不同功能模块。这对于大的工程非常有用,Area 使每个功能模块都有各自的文件夹,文件夹中有自己的Controller、View和Model,但对于管理也增加了一定的难度。

 

 AreaRegistration.RegisterAllAreas(); 会去注册所有继承至AreaRegisteration 的类

②FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);

  注册全局过滤器。

③RouteConfig.RegisterRoutes(RouteTable.Routes);

如下:表示起始页是home下的index页面

public static void RegisterRoutes(RouteCollection routes)
 {
  routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

   routes.MapRoute(
  "Default", // 路由名称
  "{controller}/{action}/{id}", // 带有参数的 URL
  new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数默认值

 }

注册路由规则:所谓的路由,就是URL到控制器类中某个Action的映射。三个参数:第一个表示路由的名称,第二个表示路由的规则,即符合什么格式的路由才能访问,第三个为定义默认值

④ BundleConfig.RegisterBundles(BundleTable.Bundles);

注册捆绑:  Bundles用于组织优化html中请求js文件和css文件的一种技术。 例如我们在创建一个html页面的时候, 往往需要引入大量的js或者css文件,想象一下,如果我们有很多个页面都要做这种操作,那是很大的工作量。Bundle技术就是为了优化这种情况而产                       生的技术。

 

Bundle 除了可以减少引用的复杂度之外,还可以减少网络请求的网络带宽,因为此技术会压缩js和css文件,并且可以减少网络的请求数。

猜你喜欢

转载自www.cnblogs.com/Echolh/p/11936492.html