- 已安装的 .NET SDK 版本(用于开发,包含编译器等工具)
- 已安装的 .NET 运行时 版本(用于运行已编译的应用程序)
- 某个特定项目正在使用的 .NET 版本
- 操作系统级别的 .NET 版本信息(.NET Framework)
下面我将为您详细介绍在不同操作系统(Windows, macOS, Linux)下如何使用命令行查看这些信息。

使用 dotnet 命令(推荐,适用于 .NET 5+ 和 .NET Core)
这是最常用和最直接的方法,适用于所有支持 .NET 的平台。
查看所有已安装的 .NET SDK 版本
这个命令会列出您电脑上所有已安装的 .NET SDK(软件开发工具包),并显示哪个是当前使用的默认版本。
dotnet --list-sdks
示例输出:
0.408 [C:\Program Files\dotnet\sdk]
6.0.408 [C:\Program Files\dotnet\sdk]
7.0.403 [C:\Program Files\dotnet\sdk]
8.0.100 [C:\Program Files\dotnet\sdk]
查看所有已安装的 .NET 运行时 版本
这个命令会列出您电脑上所有已安装的 .NET 运行时,包括 ASP.NET Core 运行时。

dotnet --list-runtimes
示例输出:
Microsoft.AspNetCore.App 6.0.16 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 7.0.9 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 6.0.16 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 7.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
查看 dotnet 命令本身的版本
这可以确认您的 dotnet 工具链是否正常工作。
dotnet --version # 或者简写 dotnet -v
示例输出:
0.100
使用命令行工具(适用于 .NET Framework)
对于旧的 .NET Framework (4.x 及更早版本),没有 dotnet 命令,您需要使用 Windows 自带的命令提示符或 PowerShell。

使用 dotnet --info (兼容性较好)
在较新版本的 Windows 上,即使安装了 .NET Framework,dotnet 命令也可能可用。--info 参数会提供非常详细的系统信息,包括所有相关的 .NET 版本。
dotnet --info
示例输出(节选):
...
.NET SDKs installed:
[C:\Program Files\dotnet\sdk] 6.0.408 [C:\Program Files\dotnet\sdk]
[C:\Program Files\dotnet\sdk] 7.0.403 [C:\Program Files\dotnet\sdk]
[C:\Program Files\dotnet\sdk] 8.0.100 [C:\Program Files\dotnet\sdk]
.NET runtimes installed:
[C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 6.0.16 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
[C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 7.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
[C:\Program Files\dotnet\shared\Microsoft.NETCore.App] 8.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
[C:\Windows\Microsoft.NET\Framework] v4.0.30319 [C:\Windows\Microsoft.NET\Framework]
[C:\Windows\Microsoft.NET\Framework64] v4.0.30319 [C:\Windows\Microsoft.NET\Framework64]
...
从这个输出中,您可以看到 .NET Framework 的版本信息(v4.0.30319)。
使用 PowerShell 查询注册表(最精确)
这是在 Windows 上查找已安装的 .NET Framework 版本最可靠的方法。
打开 PowerShell 并运行以下命令:
Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -Recurse | Get-ItemProperty -Name version -EA 0 | Where-Object { $_.PSChildName -match '^(?!S)\p{L}'} | Select-Object PSChildName, version
示例输出:
PSChildName Version
----------- -------
v4.0.30319 4.8.0.0
v4.8.04084 4.8.0.0
这会清晰地列出所有 .NET Framework 版本。
使用命令提示符 (CMD)
打开命令提示符 (CMD),输入以下命令:
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP" /s
这个命令会递归地注册表中查找所有 .NET Framework 的安装信息,输出会比较冗长,但信息很全。
查看特定项目的 .NET 版本
如果您想查看某个 C# 项目正在使用哪个 .NET 版本,可以进入该项目的目录,然后运行:
dotnet --list-info
或者在项目根目录下查看 .csproj 文件,里面会明确指定 <TargetFramework>。
在 MyApp.csproj 文件中:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>
这里的 <TargetFramework>net8.0</TargetFramework> 就表示该项目使用的是 .NET 8.0。
总结与速查表
| 你的目标 | 推荐命令 | 适用平台/场景 |
|---|---|---|
| 查看所有已安装的 SDK | dotnet --list-sdks |
所有平台,查看开发工具 |
| 查看所有已安装的运行时 | dotnet --list-runtimes |
所有平台,查看运行环境 |
查看当前 dotnet 版本 |
dotnet --version |
所有平台,快速检查工具链 |
| 查看详细的 .NET 信息 | dotnet --info |
所有平台,最全面的信息 |
| 精确查找 .NET Framework 版本 | Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' ... |
Windows PowerShell,最可靠 |
| 查看当前项目使用的版本 | dotnet --list-info 或查看 .csproj 文件 |
项目目录内 |
对于绝大多数现代 .NET dotnet --list-sdks 和 dotnet --list-runtimes 是最常用、最高效的两个命令。
