一个MVC项目还是两个?

时间:2010-10-19 18:27:00

标签: c# .net asp.net-mvc

我们为医院提供了一个大型的MVC .NET网站;它有一个医生门户网站和一个患者门户网站。实质上它是两个站点,具有非常少的特征重叠。我们将Doctor部分外包给供应商,现在我们正在创建Patient部分。我建议我们创建两个单独的MVC项目,因为我们从头开始创建Patient门户,并且不希望在其他代码中集成头痛。控制,路线冲突等。在Global.asax中已有100条路线供医生使用。 主任有点技术性,并希望我解释为什么我要创建另一个项目。我根本不想让必须在其他代码中工作,在同一个视图文件夹和控制文件夹中工作。我有什么选择?我是否会跳枪,应该坚持当前的项目。医生网站也是现场,我们正在添加患者部分。 MVC / .NET是否为此提供了解决方法?

2 个答案:

答案 0 :(得分:2)

这听起来像是使用MVC区域的好例子 - MVC 2中添加了一项功能。有关详细信息,请查看this MSDN article

来自文章本身:

  

...但是,有些应用程序可以有   大量的控制器,每个   控制器可以关联   几个观点。对于这些类型   应用程序,默认的ASP.NET MVC   项目结构可能变得笨拙。

     

为了适应大型项目,ASP.NET   MVC允许您对Web进行分区   申请成较小的单位   被称为区域。地区   提供一种分离大型MVC的方法   Web应用程序变小   功能分组。一个地区是   实际上是一个MVC结构   应用。申请可以   包含几个MVC结构   (区域)。

答案 1 :(得分:0)

使用两个不同的项目可以获得的好处之一是,如果系统的一部分掉落,另一部分则不然。如果一切都被束缚在一起,你可能会把整件事情搞得一团糟。

如果他们在单独的项目(单独的服务器等)上,那么您的患者门户将存活下来;正如您所说,患者门户网站与Doctor门户网站的共享很少。