如何在 C# 中获取程序集版本(assembly file version)?
大家好!我是 C# 新手,正在编写一个简单的 Windows Forms 应用程序。我需要在窗口标题中显示我的程序版本(例如“我的程序 v1.2.3.4”)。我知道项目中有一个 AssemblyInfo.cs 文件,我在其中设置了版本,但如何在运行时读取它?
我尝试使用 Assembly.GetExecutingAssembly().GetName().Version,但它返回 0.0.0.0,尽管我在 AssemblyInfo.cs 中指定了 [assembly: AssemblyVersion("1.0.0.0")] 和 [assembly: AssemblyFileVersion("2.0.0.0")]。AssemblyVersion 和 AssemblyFileVersion 有什么区别?如何正确获取 FileVersion 以便显示给用户?
以下是我的示例代码,它没有按预期工作:
```csharp
using System;
using System.Reflection;
class Program
{
static void Main()
{
var version = Assembly.GetExecutingAssembly().GetName().Version;
Console.WriteLine($"版本: {version}");
// 输出:版本: 0.0.0.0
}
}
```
请指教,谢谢!