MVC区域

1、区域

在mvc项目中不能有两个同名的控制器,即使你有区分不同的命名空间可以正常编译,但实际上在运行时仍然出错,除非在app_start/RouteConfig文件中通过mapRoute方法新增网址路由的设置,并明确指定命名空间,才能让此功能正常运行。

添加区域

项目上单击右键 添加 → 区域 如下图:

MVC区域

MVC区域

MVC区域

我们发现项目中多了一个Area目录,里面存放着刚才新建的Admin目录,目录中也包含了Mvc文件夹的结构,就像一个小型的Mvc项目一样。 打开Global.asax,我们发现区域已第一个被注册在Application_Start之中了。

接着我们查看区域文件夹下的路由文件AdminAreaRegistration.cs

MVC区域

不同区域互相访问 

在Admin区域下,如果需要访问区域外部的页面,我们可以使用Html.RouteLink方法来生成跳转链接。

@Html.RouteLink("显示的内容", "路由名称", new { controller = "控制器名称", action = "Action名称" })

注意:不推荐定义相同名称的控制器。

如果定义了相同名称的控制器,则需要在路由中添加namespace参数来区分它们的访问域范围。

 

上一篇:Google Web Toolkit (GWT)怎么制作多个用户界面


下一篇:JavaWeb学习——MVC三层架构(7)