如何构造,分区和构建大型MVC应用程序,以便以较小的增量片段进行部署? [英] How to structure, partition, and build large MVC application for deployment in small incremental pieces?

查看:68
本文介绍了如何构造,分区和构建大型MVC应用程序,以便以较小的增量片段进行部署?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

We will be developing a very large vertical market web application, and are leaning toward the MVC approach.

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

It will have 1 Master Page common to all views in the application. The master will provide a navigation/search framework for the entire application that will allow users to search and select entities and then navigate to a function to perform.

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

The database model will have 700 to 1000 tables. The application will have hundreds of controllers.

控制器和它们的视图可以组合为应用程序中许多(20-50)子系统之一. (我们正在研究一种辅助组织的方法.)

Controllers and their views could be grouped together into one of the many (20-50) subsystems in the application. (We are looking at an areas approach to aide in organization).

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

We want to be able to deliver enhancements/updates in small functional pieces. These might me a new function, a bug fix, customer dependent functionality, or optional modules separately purchased by the enduser.

我们花了很多年的时间来开发/支持和交付一个大型Windows vb应用程序exe. 我们想采取另一种方法.

We spent too many years developing/supporting and delivering one large windows vb app exe. We would like to take another approach.

管理层不希望交付一个大型应用程序.他们希望能够交付 必要时增加小块碎片.

Management does not want to deliver one large application. They want to be able to deliver small incremental pieces when necessary.

我们可能想创建一个包含一个控制器,只有几个视图以及一部分模型的交付物.

We may want to create a deliverable that contains one controller, and only a couple views, and a portion of the model.

要交付该文件,我们想将一个dll复制到bin文件夹,并创建一个View文件夹并在新视图中进行复制.尽可能简单!

To deliver it, we want to copy a dll to a bin folder, and create a View folder and copy in the new view(s). As simple as possible!

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

I have spent many days researching this and haven't come up with a clear path to proceed. (Every tutorial and article I found assumed a single project.)

我们如何构建应用程序以完成此任务?

How do we structure the application to accomplish this?

我们如何将应用程序分解为单独的项目/程序集?

How do we break up the application into separate projects/assemblies to do this?

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

Can you build a base project that contains the Master Page, authentication, and Global routing, and then reference this in each of the potentially hundreds of other projects for each of the modules?

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

In development, does each sub-project need to contain the entire base project, or just the shared views folder, Global routing, and web.config and a reference to the base project dll?

有任何详细的文件解释这种方法吗?

Any detail documents explaining this approach?

任何开发/测试问题?

感谢所有输入,我们必须尽快进行.

Thanks for all input, we have to get this going soon.

更新:

在此处跟随示例这是一个很好的起点!

推荐答案

Google for MVC with MEF. MEF团队的一个例子可以很好地满足您的需求.

Google for MVC with MEF. There is an example by one of the MEF team that will suit your needs exactly.

这篇关于如何构造,分区和构建大型MVC应用程序,以便以较小的增量片段进行部署?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆