Sử dụng CLI dotnet để kiểm tra cài đặt .NET Core / .NET 5+.
Các lệnh hữu ích
| Lệnh | Mô tả |
|---|---|
dotnet --info | Thông tin chi tiết: SDK version, runtime version, OS, RID, commit hash, đường dẫn cài đặt. |
dotnet --version | Chỉ phiên bản SDK (ví dụ: 7.0.100). |
dotnet --list-runtimes | Liệt kê các runtime đã cài (Microsoft.NETCore.App, Microsoft.AspNetCore.App...). |
dotnet --list-sdks | Liệt kê các SDK đã cài. |
dotnet -h hoặc dotnet --help | Danh sách lệnh có sẵn. |
Ví dụ output dotnet --info
.NET SDK (reflecting any global.json):
Version: 7.0.100
Commit: abcdef1234
Runtime Environment:
OS Name: Windows
OS Version: 10.0.19045
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\7.0.100\
Host (useful for support):
Version: 7.0.0
Commit: abcdef1234
.NET SDKs installed:
7.0.100 [C:\Program Files\dotnet\sdk]
6.0.400 [C:\Program Files\dotnet\sdk]
.NET Runtimes installed:
Microsoft.AspNetCore.App 7.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 7.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 7.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Kiểm tra trong code C# (Runtime)
// Kiểm tra runtime version
Console.WriteLine($"Runtime: {System.Runtime.InteropServices.RuntimeInformation.FrameworkDescription}");
// Output: .NET 7.0.0
// Kiểm tra SDK version (chỉ khi chạy trong SDK context)
var sdkVersion = Environment.GetEnvironmentVariable("DOTNET_VERSION")
?? "Unknown (not running in SDK context)";
// Kiểm tra thư viện cụ thể
bool hasNetCoreApp = System.Reflection.Assembly.Load(new AssemblyName("Microsoft.NETCore.App")) != null;
Kiểm tra trong Script / CI/CD
# Bash/PowerShell
if (dotnet --version 2>$null) { "Installed" } else { "Not installed" }
# PowerShell kiểm tra version cụ thể
dotnet --list-sdks | Select-String "7.0"
# GitHub Actions
- name: Check .NET
run: dotnet --info
Lưu ý
- Lệnh
dotnetphải có trong PATH. - Nếu không cài, lệnh sẽ báo lỗi "command not found" hoặc "dotnet is not recognized".
--list-runtimesvà--list-sdkschỉ liệt kê cho architecture của tiến trình dotnet (x64/x86/arm64).- .NET 5+ không dùng tên "Core" nữa, chỉ là ".NET".