【问题标题】:.NETPlatform vs .NETStandard.NET 平台与 .NET 标准
【发布时间】:2017-03-19 10:55:54
【问题描述】:

这些天,我对 .NET 中围绕平台的术语感到非常困惑 - 在我们拥有 PCL 之前,我曾经理解它。

我找到了以下文件:

对于初学者,第一个文档将具有“netstandard”这个绰号的概念平台称为“.NET Platform Standard”。后者称其为“.NET Standard”(同时它引入了一个新的“.NET Standard Library”)。

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

那么“.NET Platform Standard”和“.NET Standard Library”这两个概念有什么区别呢?第二个文档中描述所谓的新概念的表格只是显示了基本上是旧表格的内容,没有为这个新的“.NET 标准库”添加新行——就好像这些概念毕竟是一样的。免责声明真的只是建议重命名吗?

NuGet 增添了更多神秘感:

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

Microsoft.AspNet.Mvc 包的 RC 有一个名为“.NETPlatform 5.4”的目标。那是什么?它的名称不同,并且版本太高,与 .NET Platform Standard 或 .NET Standard Library 没有任何关系,无论两者之间的关系如何。嗯。

有人知道这一切的真正含义吗?

编辑:

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

这样就解决了问题的 NuGet 部分,我的理论是“.NET 标准库”只是以前称为“.NET 平台标准”的重命名。这留下了术语“.NET 平台”,当版本计数没有为所有内容重置为“1”时,我怀疑它是这些东西中任何一个的更旧的名称。

也许了解这些事情的人可以确认或纠正这一点。

【问题讨论】:

  • 所有 RC 位现在都已失效。那就别提了。

标签: .net asp.net-core nuget .net-core


【解决方案1】:

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

您在此处看到的 NuGet 名称只是 .NET Standard 演变的剩余部分。目前的绰号是:

  • netstandard.x:指 .NET Standard 的特定版本
  • netcoreapp1.x:指的是针对 .NET Core 的特定版本

查看新的 .NET Standard GitHub repository,尤其是 docs,了解有关最新 .NET Standard 开发的更多信息。

【讨论】:

  • 谢谢。特别是第二个链接中的常见问题解答是我应该首先阅读的内容。
猜你喜欢
  • 1970-01-01
  • 2016-05-27
  • 2016-11-08
  • 1970-01-01
  • 2017-10-20
  • 1970-01-01
  • 2018-05-12
  • 2018-02-11
  • 1970-01-01
相关资源
最近更新 更多