我知道对于旧版本的.NET,您可以通过以下方法确定是否安装了给定的版本

https://support.microsoft.com/en-us/kb/318785  

是否有官方的方法来确定是否安装了。net Core ?

(我不是说SDK,我想检查一个没有SDK的服务器,以确定它是否安装了DotNetCore.1.0.0-WindowsHosting.exe)

我能看到

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NET Cross-Platform Runtime Environment\.NET Framework 4.6\Win\v1-rc1 

在我的windows 7机器上使用1.0.11123.0版本#,但我在windows 10机器上没有看到相同的东西。


当前回答

查看C:\Program Files\dotnet\shared\ Microsoft.NETCore。App来查看运行时的哪个版本在那里有目录。源。

这里的许多答案混淆了SDK和运行时,两者是不同的。

其他回答

有可能。net Core已经安装,但没有添加到PATH中 变量,用于您的操作系统或用户配置文件。运行 Dotnet命令可能无法工作。作为替代方案, 你可以检查。net Core安装文件夹是否存在。

如果在安装过程中没有更改它,则它将安装到标准文件夹中

C:\程序文件\dotnet\dotnet.exe .NET SDK C:\程序文件\dotnet\ SDK \{版本}\ .NET Runtime C:\程序文件\dotnet\shared\{Runtime -type}\{version}\

有关更多详细信息,请参阅.NET文档中的“如何检查.NET Core已安装”页面

或者你也可以看看里面

C:\Program Files\dotnet\sdk

使用Powershell:

Runtimes:

(dir (Get-Command dotnet).Path.Replace('dotnet.exe', 'shared\Microsoft.NETCore.App')).Name

SDKs:

(dir (Get-Command dotnet).Path.Replace('dotnet.exe', 'sdk')).Name

在windows上,我检查了注册表项:

微软HKEY_LOCAL_MACHINE \ SOFTWARE \ \ ASP。NET核心共享框架\v5.0\5.0.12

对于没有SDK的纯运行时环境,例如安装了Windows托管包的服务器,正确的答案是使用以下命令运行PowerShell:

dotnet --info

根据官方文件:

——version选项“打印正在使用的. net Core SDK的版本”,因此如果SDK未安装,该选项将不起作用。而…… info选项“打印CLI工具和环境的详细信息,比如当前的操作系统、提交版本的SHA以及其他信息。”

这是另一篇解释。net Core版本控制工作原理的官方文章。:)