目录

背景如何将 Area 中的 Controller 放到独立的程序集?备注

背景返回目录

本文假设您已经熟悉了 ASP.NET MVC 的常规开发方式、执行模型和关键扩展点,这里主要说一下如何使用 ASP.NET MVC 的源代码解决一些问题。

如何将 Area 中的 Controller 放到独立的程序集?返回目录

为了更好的组合代码,我们都会使用 Area 划分我们的项目,也会把 Controller 移动到独立的程序集,多数情况这回导致问题。

项目结构

问题出现在哪里了?

初步原因分析是 DefaultController 的 Namespace 不匹配 TestAreaRegistration 的 Namespace,我们把 DefaultController 的 Namespace 修改的成 TestAreaRegistration 的 Namespace,然后就OK了。

看到这里基本就可以解决问题了,我们可以修改 AreaRegistrationContext 的 Namespaces,

深入 MVC 源代码

想了解 AreaRegistrationContext 的 Namespaces 如何构造的就需要看 MVC 的源代码了,见下图:

看到了 GetType.Namespace; 是不是就悟了,不难想象 AreaRegistrationContext.MapRoute 使用了他的 Namespaces 属性,见下图:

备注返回目录

如果你对 MVC 路由中的 Namespace 有所理解,解决本文的问题会有很多方案,这里不再赘述。

 
分类: ASP.NET MVC

最新文章

  1. JeeSite学习笔记~代码生成原理
  2. 【转】c#处理3种json数据的实例
  3. python socket
  4. Window.onload与$(document).ready()的对比
  5. poj2392 多重背包
  6. Python进阶06 循环对象
  7. js 获取随机数
  8. ArcGIS Server 10.2 实战(三)图层标注及图例中文显示乱码的解决
  9. request对象常用API 获取请求参数的值 request应用 MVC设计模式
  10. 【 D3.js 选择集与数据详解 — 3 】 绑定数据的顺序
  11. Yii Framework 开发教程Zii组件-Tabs示例
  12. hdu1025 最长不下降子序列nlogn算法
  13. 远程控制你的智能电视,按键|输入|安装App等都已实现,已开源!
  14. 随机采样和随机模拟:吉布斯采样Gibbs Sampling
  15. MongoDB学习笔记(四)
  16. linux的systemctl服务及其使用
  17. python框架之Django(11)-中间件
  18. 在css中 父元素不固定高度,怎样实现子元素的高度100%
  19. Ubuntu:14.04.2 安装多个Linux内核
  20. 638. Shopping Offers

热门文章

  1. Alice's Chance
  2. div元素上下左右居中
  3. 在Cocos2d-x正在使用SQLlite数据库
  4. Git学习笔记1--Git原理简单介绍
  5. NodeJS,我对“高、高、非”的一些看法
  6. Socket 学习(一)
  7. Linux Mysql 权限相关信息 来源于网络
  8. Android分析应用程序的构建过程
  9. Light OJ 1316 A Wedding Party 最短路+状态压缩DP
  10. SQL 2005 中查询或执行另外的数据库操作的方法