.NETPlatform与.NETStandard

Joh*_*ohn 7 .net nuget .net-core asp.net-core

我现在对.NET中平台的术语感到困惑 - 我曾经理解它直到我们拥有PCL.

我找到了以下文件:

对于初学者来说,第一个文档是指概念平台,其名称为"netstandard",称为".NET平台标准".后者称之为".NET标准"(同时它引入了一个新的".NET标准库").

我真的不明白为什么第一个文档在顶部有一个免责声明,第二个文件描述了后继概念:似乎至少显示版本关联的表在第一个文档中是更新的.

那么".NET平台标准"和".NET标准库"这两个概念之间的区别是什么?描述新概念的第二个文档中的表只显示了基本上是旧表的内容,而没有为这个新的".NET标准库"添加新行 - 好像概念毕竟是相同的.免责声明真的只是建议重命名吗?

NuGet增添了更多神秘感:

Json.NET NuGet包有一个名为".NETStandard"的目标(显然NuGet使用其中一个东西的第三个名字)并且我认为这应该与"netstandard"相同,对吧?这实际上是".NET平台标准",对吗?

Microsoft.AspNet.Mvc包的RC 有一个名为".NETPlatform 5.4"的目标.那是什么?它的调用方式不同,并且版本太高而无法与.NET平台标准版或.NET标准库有任何关系,无论两者之间的关系如何.嗯.

有人知道所有这些真正意味着什么吗?

编辑:

我设法弄清楚了一点:正如Lex Li所说,rc版本Microsoft.AspNet.Mvc已经不复存在了.它使用了短名称"dotnet5.4",它在第一个文档中确实被引用为已弃用并且长期称为".NET平台".该软件包的当前最新版本可能是名为"Microsoft.AspNetCore.Mvc"的版本,它仅指非失效的目标名称.

这就解决了问题的NuGet部分,我的理论是,".NET标准库"只是对以前称为".NET平台标准"的重命名.这就留下了".NET平台"这个术语,我怀疑这个版本的版本计数没有重置为"1"时,这个版本的名称更为旧版.

也许知道这些事情的人可以确认或纠正这一点.

Hen*_*ema 3

您说得对,.NET Platform Standard 的概念已被.NET Standard取代(基本上已重命名)。.NET Standard 和 .NET Standard Library 本质上也指相同的概念。

您在这里看到的 NuGet 绰号只是 .NET 标准演变的残余。目前的绰号是:

  • netstandard.x:指 .NET Standard 的特定版本
  • netcoreapp1.x:指针对特定版本的 .NET Core 的 .NET Core 应用程序

查看新的 .NET Standard GitHub 存储库,尤其是文档,以了解有关最新 .NET Standard 开发的更多信息。