Ste*_*ery 14 asp.net-mvc asp.net-mvc-areas asp.net-mvc-3-areas
在单个项目解决方案中,当您拥有大量控制器时引入区域确实可以改善分离,并允许模块轻松地复制到解决方案中或从解决方案中复制出来.但是,在大型企业解决方案中,我倾向于将逻辑拆分为单独的项目.
因此具有单独的UI,Controller,SOA,Model和Repository项目.在这种情况下,区域不再有意义了,而且它们为Url添加了额外的顶层,这通常是不需要的,但我相信如果你保持控制器的独特性,你可以省略Url中的区域,但不是有点臭吗?
区域可能适用于中等复杂度的站点,或者模块代码更好地保存在一个位置,因此可以将其复制到其他站点或删除.
Bra*_*ton 13
我不确定这是不是正确的问题. 对于小型项目而言,区域可能过度,但很难想象一个非平凡的大型项目不使用区域来帮助保持课程的有序性.
我为企业使用MVC区域,并喜欢它的几个方面:
在一个多个客户端可以访问公共业务功能的环境中,您完全可以将服务放在单独的项目/解决方案中,从而通过存储库抽象数据访问.
但是随着Web项目的发展,MVC领域非常擅长为UI /路由混乱提供一些订单,对我而言,无论上下文如何,这都是非常宝贵的.