项目或单独项目中的命名空间
Namespace within a project or separate project
我正在尝试阅读有关 C# 开发的最佳实践。我遇到过有人在一个解决方案中创建不同的 class 库项目。我一直在为 C# 开发解决方案,但从未为我的 classes 创建单独的项目。虽然,我的一些项目很小。为了分隔命名空间,我通常会创建文件夹。我应该为我的 class 模块创建一个单独的项目有什么充分的理由吗?
创建单独项目的原因:
当我们创建类型为Class库的项目时,在构建之后,MSbuild 过程会吐出一个程序集/动态链接库或.DLL 文件。此 .dll 文件可以在相同或其他解决方案的任何项目中引用。这支持代码的可重用性。
基于 Web (ASP.Net MVC) 解决方案结构的一般经验法则如下:
- 创建域模型项目(Class 库项目类型)
- 创建数据访问层(Class 库项目类型)
- 创建服务层项目(Class 库项目类型)
- 创建一个UI层项目(ASP.Net MVC项目类型)
为上面列出的每个项目创建单元测试项目(Class 库项目类型)。
希望这对您有所帮助。
我正在尝试阅读有关 C# 开发的最佳实践。我遇到过有人在一个解决方案中创建不同的 class 库项目。我一直在为 C# 开发解决方案,但从未为我的 classes 创建单独的项目。虽然,我的一些项目很小。为了分隔命名空间,我通常会创建文件夹。我应该为我的 class 模块创建一个单独的项目有什么充分的理由吗?
创建单独项目的原因:
当我们创建类型为Class库的项目时,在构建之后,MSbuild 过程会吐出一个程序集/动态链接库或.DLL 文件。此 .dll 文件可以在相同或其他解决方案的任何项目中引用。这支持代码的可重用性。
基于 Web (ASP.Net MVC) 解决方案结构的一般经验法则如下:
- 创建域模型项目(Class 库项目类型)
- 创建数据访问层(Class 库项目类型)
- 创建服务层项目(Class 库项目类型)
- 创建一个UI层项目(ASP.Net MVC项目类型)
为上面列出的每个项目创建单元测试项目(Class 库项目类型)。
希望这对您有所帮助。