1.mvc4.0新增的area区域机制,可以协助你在架构较为大型的项目,让独立性较高的部分功能独立成一个MVC子网站,以降低网站与网站之间的耦合性,也可以通过area的切割,让多人同时开发同一个项目时候,能够减少互相冲突的机会。在MVC项目中是不允许有两个同名的控制器的。

比如说就是你在做网站时,你有首页了,但是你要想有别的栏目,那么这时Area就有用处了,可以通过跳转链接来访问你所想要去的子栏目。

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

我们可以在同一个项目内就能够切分不同的mvc网站,且每一个子网站都会有完整的mvc目录结构在开发时,就像是区分成不同的mvc网站一样

建立区域:

右键点击解决方案管理器,然后添加区域,这个区域的名字就是你子栏目的名字,完事后你就会发现出现一个文件夹,这个文件夹就跟你的MVC项目几乎一样,当然你能创建一个那就可以在Area中多建立几个子栏目(区域),然后在这个区域中添加一个控制器,接下来就是来跳转到你想要显示的页面了。

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

@Html.RouteLink("显示的内容", "路由名称", new { controller = "控制器名称", action = "Action名称" })//这个是在你想显示的页面中的视图中写的例如在Index的视图中。

路由名称:你想显示的子页面中的 “子项目名AreaRegistration.cs” 中的   "Admin_default" .

public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Admin_default",
"Admin/{controller}/{action}/{id}",
new { action = "Index", id = UrlParameter.Optional }
);
}

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

最新文章

  1. ScrollMe – 在网页中加入各种滚动动画效果
  2. 分享AceAdminUI后台框架-你喜欢吗?
  3. PHP上传大文件和处理大数据
  4. Roy Li的学习和成长自传
  5. Delphi的windows剪切板操作函数
  6. 【剑指offer 面试题17】合并两个排序的链表
  7. Dos操作
  8. android 72 确定取消对话框,单选对话框,多选对话框
  9. mysql 的 decimal类型
  10. wpf之Popup弹出自定义输入"键盘"
  11. 关于AOP装饰函数中的this
  12. 苹果系统css样式变化
  13. PHP之单例模式
  14. log4j2的配置文件log4j2.xml笔记
  15. 使用link rel="shortcut icon"为网页标题加图标
  16. html5利用websocket完成的推送功能(tomcat)
  17. 【BZOJ2229】[ZJOI2011]最小割(网络流,最小割树)
  18. centos6.5环境基于corosync+cman+rgmanager实现RHCS及iscsi+gfs2+clvm的文件系统集群
  19. ABBYY PDF Transformer+系统要求
  20. C# NPOI生成Excel文档(简单样式)

热门文章

  1. 照片灰蒙蒙?用PS的曲线功能来解决 (转)
  2. flash开发几个问题
  3. Django中载入javascript、css的操作
  4. js中定义类的方式
  5. Excel表格解析
  6. docker 数据卷 权限
  7. 后台dom拼接xml,动态显示统计图
  8. python第十七天-----Django初体验
  9. CURL详解(转载)
  10. STM32 使用 FreeRTOS过程记录