我们为医院提供了一个大型的MVC .NET网站;它有一个医生门户网站和一个患者门户网站。实质上它是两个站点,具有非常少的特征重叠。我们将Doctor部分外包给供应商,现在我们正在创建Patient部分。我建议我们创建两个单独的MVC项目,因为我们从头开始创建Patient门户,并且不希望在其他代码中集成头痛。控制,路线冲突等。在Global.asax中已有100条路线供医生使用。 主任有点技术性,并希望我解释为什么我要创建另一个项目。我根本不想让必须在其他代码中工作,在同一个视图文件夹和控制文件夹中工作。我有什么选择?我是否会跳枪,应该坚持当前的项目。医生网站也是现场,我们正在添加患者部分。 MVC / .NET是否为此提供了解决方法?
答案 0 :(得分:2)
这听起来像是使用MVC区域的好例子 - MVC 2中添加了一项功能。有关详细信息,请查看this MSDN article。
来自文章本身:
...但是,有些应用程序可以有 大量的控制器,每个 控制器可以关联 几个观点。对于这些类型 应用程序,默认的ASP.NET MVC 项目结构可能变得笨拙。
为了适应大型项目,ASP.NET MVC允许您对Web进行分区 申请成较小的单位 被称为区域。地区 提供一种分离大型MVC的方法 Web应用程序变小 功能分组。一个地区是 实际上是一个MVC结构 应用。申请可以 包含几个MVC结构 (区域)。
答案 1 :(得分:0)
使用两个不同的项目可以获得的好处之一是,如果系统的一部分掉落,另一部分则不然。如果一切都被束缚在一起,你可能会把整件事情搞得一团糟。
如果他们在单独的项目(单独的服务器等)上,那么您的患者门户将存活下来;正如您所说,患者门户网站与Doctor门户网站的共享很少。