zoukankan      html  css  js  c++  java
  • MVC 中的Areas支持

    在ASP.NET MVC 2中对于Area功能的增强,这样的增强是如何在同一个项目中更好地组织应用程序的?

      ASP.NET MVC 1.0时,如果我们要在一个项目中做自己网站的后台应用,而又保持URL的整洁性,是很困难的,那需要你自己做很多工作来,通过自有的方式实现Area的功能,效果可能还不那么好,因为默认情况下Controller是不区分命名空间的。例如:前台可能有这样的地址:http://testhost/News/List,而你希望在后台的News管理列表的Url是:http://testhost/admin/News/List,这几乎是不可能完成的任务,让我们非常困扰。

      ASP.NET MVC 2添加了Areas的支持,

    解决上述问题我们就可以添加一个Area,名字叫做admin,

    这时项目中就有了一个Areas文件夹,

    里面是admin文件夹,admin里面包含了Controllers、Models、Views三个目录和一个名叫的AreaRegistration.cs文件,

    然后我们在Global.asa.cs文件中的routes.MapRoute前加一行AreaRegistration.RegisterAllAreas();就搞定了。

    这样不同区域的应用在不同Area目录里进行独立的组织管理,相当不错。

    Global.asax

     protected void Application_Start()
     {
          
    //下面两行的顺序不要颠倒!!!
          AreaRegistration.RegisterAllAreas();
          RegisterRoutes(RouteTable.Routes);
     }

    注意:1、如果是修改项目,移动Controllers文件夹中的Controllers到Areas文件夹中时,需要修改所移动的Controllers的命名空间。

              2、注意Global.asax文件中不要多加那一句话(如下图:)

     public static void RegisterRoutes(RouteCollection routes)
     {
           
    //如果加了下面这句的话,系统会找不到的,
           
    //千万不能范的错误!!!!!
           routes.Clear();
     }

  • 相关阅读:
    域hash值破解的总结经验
    centos下安装ngnix+php+mysql服务
    方程式EQGRP_Lost_in_Translation工具之fb.py
    Bypass AV meterpreter免杀技巧
    跟我一起创建栈
    vue-cli3使用yarn run build打包找不到路径
    使用vue-cli3快速适配H5项目
    关于判断是安卓还是ios环境跳转下载页
    跟我一起学习webpack输出动态HTML(三)
    跟我一起学习webpack使用配置文件(二)
  • 原文地址:https://www.cnblogs.com/lizhao/p/1990410.html
Copyright © 2011-2022 走看看