如何从c#应用程序本身检查应用程序使用的是什么版本的dotnet?
答案 0 :(得分:12)
使用Environment.Version
- 它为您提供运行应用程序的.NET的确切版本。
获取一个Version对象,该对象描述公共语言运行库的主要,次要,构建和修订号。
要了解安装了哪个版本的框架,请参阅this所以问题和答案。在坚果壳中,您需要深入了解注册表。
答案 1 :(得分:6)
您可以使用:
Environment.Version
获取.NET运行时的版本号。
答案 2 :(得分:0)
创建一个控制台应用程序添加此类并运行它
using Microsoft.Win32;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication2
{
public class GetDotNetVersion
{
public static void Get45PlusFromRegistry()
{
const string subkey = @"SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\";
using (RegistryKey ndpKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey(subkey))
{
if (ndpKey != null && ndpKey.GetValue("Release") != null)
{
Console.WriteLine(".NET Framework Version: " + CheckFor45PlusVersion((int)ndpKey.GetValue("Release")));
}
else
{
Console.WriteLine(".NET Framework Version 4.5 or later is not detected.");
}
}
}
// Checking the version using >= will enable forward compatibility.
private static string CheckFor45PlusVersion(int releaseKey)
{
if (releaseKey >= 394802)
return "4.6.2 or later";
if (releaseKey >= 394254)
{
return "4.6.1";
}
if (releaseKey >= 393295)
{
return "4.6";
}
if ((releaseKey >= 379893))
{
return "4.5.2";
}
if ((releaseKey >= 378675))
{
return "4.5.1";
}
if ((releaseKey >= 378389))
{
return "4.5";
}
// This code should never execute.
// that 4.5 or later is installed.
return "No 4.5 or later version detected";
}
}
// Calling the GetDotNetVersion.Get45PlusFromRegistry method produces
// output like the following:
// .NET Framework Version: 4.6.1
}
答案 3 :(得分:0)
在Visual Studio中 转到工具 - > Nutget包管理 - >包管理器控制台 输入 dotnet --version 你走吧!