且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

MVC 3 AreaRegistration and some problem reference

更新时间:2022-09-15 23:19:09

先上图

MVC 3 AreaRegistration and some problem reference

途中目录【Areas】【Admin】名字随便。

目录说明:【Admin】代表当前area,里面就像默认的MVC模板创建的网站一样放你的目录【Controllers】【Views】;

配置说明:需要在【Views】下放MVC的config,最简单的办法就是新建一个MVC项目从【Views】里拷贝一个过来。每个Area中的Views都需一个单独的Config。

配置Area类:{AdminAreaRegistration}类需要放在【Admin】目录下(这个是默认的要求,如果有需求的话也可以放在别的地方,需要另外再设置命名空间,此处不说了),类必须继承自AreaRegistration类,类名无所谓,MVC会反射当前网站中所有继承自这个类的实体初始化并注册。

可能会碰到的问题:

1)如果您Area中的controller与默认的Controller名有重复,但是命名空间不重复,可以在global.cs中在

RegisterGlobalFilters(GlobalFilters.Filters); 
RegisterRoutes(RouteTable.Routes); 

后加一句

ControllerBuilder.Current.DefaultNamespaces.Add("YourNamespace");

2)如果你常用Helper.Action等需要跨Area执行Action,那么默认会出错,必须在routevalus强制指定area=“xxx”;


本文转自today4king博客园博客,原文链接:http://www.cnblogs.com/jinzhao/archive/2011/08/04/2127816.html,如需转载请自行联系原作者