【发布时间】:2016-10-21 03:39:09
【问题描述】:
在 C# 中使用 MVC 模式时的最佳实践是什么?我应该使用文件夹还是新的命名空间?使用命名空间时,我必须添加引用,哪个命名空间可以与另一个命名空间......这很好!
但是当使用命名空间并释放我的程序并检查 .exe 文件时,它会创建三个(模型、视图、控制器).exe 文件,它们必须位于同一文件夹中才能运行。
使用文件夹时,它们不相互依赖,这意味着我可以将“主”.exe 移动到一个文件夹,而不是移动所有三个 exe 文件,这样就可以了。
我会说拆分命名空间更好,因为您可以设置哪些类可以使用引用相互通信。但我不喜欢我必须在同一个文件夹中有三个 exe 文件才能运行它(命名空间样式)。
那么,什么是最佳实践+利弊?
查看屏幕截图以了解 Visual Studio 2015 中的差异: Different namespaces Folder structure
谢谢!
【问题讨论】:
-
最佳实践是始终让命名空间和文件夹结构匹配。您的问题似乎是在问哪个更好,但答案是两者都需要。
-
澄清一下:我应该将模型、视图、控制器作为命名空间中的文件夹,还是将模型、视图和控制器作为三个不同的命名空间?请看看我的打印屏幕。
-
程序组织完全基于意见 - C#/.Net 几乎允许任何组织命名空间/文件夹/程序集的方式(例如,与 Java 不同)。随意设置它们以最适合您的项目。
-
我认为您混淆了您的术语。我认为您将项目称为文件夹,假设您的问题是这种情况:我应该将我的模型视图和控制器分成不同的项目,还是在一个项目中分开文件夹。如果这是您想问的,请编辑您的问题。
-
旁注:将 MVC 的每个组件构建成单独的可执行文件并在它们之间建立跨进程通信有点不寻常......通常一个会有主 exe 和一个或多个类库( DLL)。