C#命名空间命名约定

c# namespace naming conventions

我公司的另一位开发人员使用以下命名空间创建了一个新的 class 库:

MyCompany.Repositories.Users

根据我多年来的经验,我希望这个命名空间被命名为:

MyCompany.Repository.User

您的命名空间通常使用哪种样式?我在想我的风格有点标准。对我来说它看起来更干净。您能否提供任何推荐命名空间命名约定的权威网址?

有趣的问题。对于 C#,我从未见过 "use plurals where appropriate" 之外的任何建议。

假设命名空间是 MyCompany.Repositories

借用 a similar question posed in the Java world 我建议复数是有效的。 Repositories 命名空间中的组件在某种意义上是同构的,因为它们都是存储库(UserRepositoryStudentRepositoryLocationRepository 等) .

相反,像 MyCompany.ReportingEngine 这样的命名空间作为单独命名的命名空间是有效的,因为这个命名空间可能包含异构的 classes,它们做的事情非常不同(即查询生成器 class、报表模型、字段模型、过滤模型)。 MyCompany.ReportingEngines 会建议此命名空间包含不同类型的 classes, 报告引擎。