2

希望SO社区能够帮助解决办公室中的争论。目前我们的结论是'它取决于'!MVC命名空间组织

在MVC中,你如何组织你的命名空间?

选项A

你下去有模型,控制器和视图命名的MS ASP.NET MVC路线?

选项B

还是你分隔每个MVC的到它的逻辑 '功能',例如:

特点A

  • FeatureAModel
  • FeatureAController
  • 类型
    • IFeatureAView(接口 - 使控制器不参考具体查看)
  • 查看
    • FeatureAView(混凝土)

我们可以看到两者的点。我喜欢选项B,因为它可以更好地在工作室中构建我的项目 - 一眼就能看到所有内容都按照功能分组。但是,例如,如果我们希望将所有模型在将来转移到服务层,选项A为我们提供了一个更容易的缩放选项。

欢迎您的光临!

回答

1

我更喜欢两者在层次结构中的组合。你的选择A是我的最高水平,并且在这个功能方面是明智的

0

我个人倾向于赞成将所有控制器都保存在同一个命名空间中的想法,这完全是由于缺省路由不支持名称空间。

这意味着如果我试图命名我的控制器相同的名称,我得到一个编译器时间错误,而不是关于路由的奇怪的运行时错误。

无论如何,已经有不少博客文章可以在谷歌搜索关于此的更多信息。

所以,我要说

选项A