如何构建,分区和构建大型MVC应用程序以便在小型增量部分中进行部署?

Sco*_*ugh 5 asp.net-mvc

我们将开发一个非常大的垂直市场Web应用程序,并倾向于MVC方法.

它将具有应用程序中所有视图共有的1个母版页.主人将为整个应用程序提供导航/搜索框架,允许用户搜索和选择实体,然后导航到要执行的功能.

数据库模型将包含700到1000个表.该应用程序将有数百个控制器.

控制器及其视图可以组合在一起,形成应用程序中的许多(20-50个)子系统之一.(我们正在寻找一个区域方法来帮助组织).

我们希望能够在小功能部件中提供增强/更新.这些可能是我的新功能,错误修复,客户相关功能或最终用户单独购买的可选模块.

我们花了太多年时间开发/支持和提供一个大型Windows vb app exe.我们想采取另一种方法.

管理层不希望提供一个大型应用程序.他们希望在必要时能够提供小的增量件.

我们可能想要创建一个包含一个控制器的交付项,只包含几个视图和模型的一部分.

为了提供它,我们想要将一个dll复制到bin文件夹,并创建一个View文件夹并在新视图中复制.尽可能简单!

我花了很多天研究这个问题,并没有想出一条明确的道路.(我发现的每个教程和文章都假设了一个项目.)

我们如何构建应用程序来实现这一目标?

我们如何将应用程序分解为单独的项目/程序集来执行此操作?

您是否可以构建包含母版页,身份验证和全局路由的基础项目,然后在每个模块的每个可能数百个项目中引用它?

在开发中,每个子项目是否需要包含整个基础项目,或者仅包含共享视图文件夹,全局路由和web.config以及对基础项目dll的引用?

解释这种方法的任何细节文件?

任何开发/测试问题?

感谢所有的投入,我们必须尽快实现这一目标.

更新:

按照这里的示例链接文本

这是一个很好的起点!

Bur*_*urt 0

Google 的 MVC 和 MEF。MEF 团队之一提供了一个完全适合您需求的示例。