.NET标准,.NET Core和.NET Framwork项目的.NET命名约定

时间:2017-01-19 16:14:01

标签: .net .net-core naming .net-standard

我在网上没有发现任何包含.NET标准,.NET Core和.NET Framework项目的.NET解决方案的公认命名约定。

在我的情况下,我们在.NET Framwork项目中有以下约定:

[CompanyName].[TechnologyName].[Feature]

现在我们要将其移植到.NET Standard和.NET Core。并非该功能中的所有类都适用于所有类,因此我们有一个.NET标准项目,该项目由.NET Core项目引用。然后.NET Framework项目引用.NET Core项目。我们现在应该如何命名我们的项目。

一种解决方案是在名称空间中包含Standard或Core的名称:

[CompanyName].Standard.[TechnologyName].[Feature]
[CompanyName].Core.[TechnologyName].[Feature]
[CompanyName].[TechnologyName].[Feature]

[CompanyName].[TechnologyName].[Feature].Standard
[CompanyName].[TechnologyName].[Feature].Core
[CompanyName].[TechnologyName].[Feature]

但我们想知道是否存在全局命名约定。

1 个答案:

答案 0 :(得分:8)

我认为原始指南仍然有效。取样Microsoft.AspNetCore.Mvc。这是公司,产品和以下任何内容。 .NET Standard或.NET Core版本应以与其目标框架名字对象打包相同的名称发布。以Newtonsoft.Json的样本为例。如果API表面/功能集发生更改,请选择更改版本或更改产品名称。

不要对Microsoft产品名称中的Core添加内容感到困惑。他们选择制作ASP.NET Core,.NET Core和EF Core新产品,以避免误导更高产品版本的假设:ASP.NET 5.

听ASP.NET社区站立我可以告诉你,这个话题出现了,他们得出的结论是并非所有内容都应该添加一个核心命名部分。