.net core版本

.Net Core版本分两个方面:

  • .NET Core Runtime
  • .NET Core SDK

一般如果说".Net Core 2.1"大多数时候指的是.NET Core Runtime 2.1。.NET Core Runtime就是运行时环境。我们的代码经过.NET Core SDK开发并编译后,最后是运行在Runtime上面的,所以SDK和Runtime是两个东西,Runtime就类似Java的虚拟机。

Runtime的版本号是遵循语义规则的(Semantic versioning),也就是MAJOR.MINOR.PATCH。

SDK版本不遵循语义规则,SDK版本发布速度一般快于Runtime,SDK是向老版本的Runtime兼容的。SDK版本的前两个数字和Runtime的前两个数字是一样的。第三个数字则表示SDK自身的Minor版本和Patch版本。

比如SDK版本是2.2.102,前面的2.2是与Runtime 2.2一致。而SDK第三个数字102中1表示Minor 1(也称为Feature变更版本), 2表示Patch 2。如果SDK 的Minore(Feature变化)版本版本超过10个则第三个数字会滚动到1000系列,即类似2.2.1000。但这种情况一般微软不会让它发生。同样的,如果SDK的Patch版本超过99,也是不可能发生的,因为微软一般会在此之前就想办法产生一次Feature的变更。

可以用dotnet --list-sdks和dotnet --list-runtimes 两个命令查询机子上安装的SDK和Runtime及他们的版本号。

.Net Standard也有一个版本号,.Net Stardard是针对API的版本,.Net Core和.Net Framework等等是.Net Stardard的具体实现。

更详细信息参考微软:

Overview of how .NET Core is versioned

下面的链接讲述了.Net Stardard和.Net Core的关系

.NET Standard

.NET Standard versions

发布了108 篇原创文章 · 获赞 126 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/qq_16587307/article/details/103487305