关注代码:
public static string GetVersion()
{
//for .NET Standard 2.0
//return FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).ProductVersion;
//for .NET Standard 1.2 - write the version number manually.
return "1.0.0";
}
我正在尝试获取软件包版本 .Net Standard 1.2 ,因为FileVersionInfo
类不存在。
1.2版是否有解决方案?
答案 0 :(得分:1)
对于.NET Framework:
using System;
...
string ver = AppDomain.CurrentDomain.SetupInformation.TargetFrameworkName;
,对于.NET Core:
using System.Reflection;
using System.Runtime.Versioning;
...
string ver = Assembly.GetEntryAssembly()?.GetCustomAttribute<TargetFrameworkAttribute>()?.FrameworkName;
输出:
.NETFramework,Version=v4.5.1
.NETCoreApp,Version=v2.0
答案 1 :(得分:-1)
正在寻找如何获取软件包版本。 您的问题是正确的,只是缺少名称空间。 以下代码为System.Diagnostics.FileVersionInfo和System.Reflection.Assembly的完整命名空间
请注意,如果可能的话,它是从.Net Standard 2.0.3运行的。
var package_version = System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly().Location).ProductVersion;