2012-10-22 115 views
2

我开始一个新的ASP.NET Web API项目。我承认,我从来没有擅长在我的解决方案中组织我的项目。我想在这方面做得更好,因此也是一个问题。我应该如何组织我的ASP.NET Web API解决方案?

首先,我打算使用的命名约定是我找到了几个地方(博客,MSDN等)并包含CompanyName.ProductName.Component。

我的困惑在于解决方案中的项目。我有服务工作的概念证明,但一切都在一个项目中。它的工作原理,但由于各种原因,这是不好的,我想分开组件。该项目使用EF,数据存储库接口,测试项目,业务对象以及Web API控制器。我应该如何组织我的解决方案和各种项目?

回答

0

这个问题没有一个通用的答案。然而,这是我的默认:

enter image description here

一些其他注意事项:

虽然网络,核心的项目名称,以及数据[产品名称] [层],我更改默认设置。命名空间和程序集名称为[company]。[product]。[layer]。我没有完全限定,以便我可以保持路径长度不变(一旦您在路径中输入了256个字符,构建就会抱怨)。

模型项目通常也有其他文件夹,例如\ validation,\ exceptions等等,但我只是想说明我通常会将模型类旁边的数据访问接口。

我不更改测试项目的默认名称空间或程序集名称,因为它们对解决方案以外的任何内容都不重要。这就是说,如果我的API是死的简单(只有几个控制器),我可能会去一个项目的API和一个测试项目。如果我这样做,我为每个逻辑层(核心,数据等)添加API下的文件夹。

相关问题