.NET Core 1.1,但安装程序说SDK 1.0.3?

时间:2017-05-09 08:41:41

标签: .net-core

我对.NET Core和版本号感到困惑。我下载了.NET Core 1.1 Windows(x64)安装程序(.exe)。当安装程序开始运行时,它会显示" .NET Core SDK 1.0.3(x64)安装程序"。当我输入" dotnet --version"从命令行,我也得到" 1.0.3"。

为什么版本信息不显示" 1.1"?

2 个答案:

答案 0 :(得分:3)

.NET Core Runtime(二进制文件)和.NET Core SDK有不同的版本,它是按设计的:

.NET Core Runtime and SDK download archive

例如,.NET Core Runtime 1.1.1与SDK 1.0.3一起分发。

dotnet --version命令返回最新的SDK版本。要检查所有安装的SDK版本,请转到

  

c:\ program files \ dotnet \ sdk

此时,dotnet未提供用于打印运行时版本的控制台命令。您可以在GitHub上跟踪有关它的讨论:

Add a CLI gesture to display installed SDKs/Runtimes in the host location

解决方法(Windows)

可以安装多个Runtime和SDK版本。要查找安装的所有运行时,请转到文件夹:

  

C:\ Program Files \ dotnet \ shared \ Microsoft.NETCore.App \

并检查已安装Runtime二进制文件的子文件夹:

1.0.3
1.0.4
1.1.0
1.1.1

对于.NET Core 2.0 Preview 1,这仍然是实际的。

答案 1 :(得分:1)

有趣的是,SDK旨在独立于运行时,即dotnet SDK能够运行具有不同运行时版本的应用程序,包括.NET Framework(完整框架)运行时。它在* .csproj(或* .fsproj)

中指定

<TargetFramework>netcoreapp1.1</TargetFramework>

因此,当您运行dotnet restore时,SDK会查看该项目文件并安装运行时(如果它在您的计算机中丢失)。 您可以通过

获取程序的当前运行时版本

Console.WriteLine(System.Runtime.InteropServices.RuntimeInformation.FrameworkDescription);