控制台实用程序App上的应用程序版本的方法

时间:2008-10-17 13:31:06

标签: c# .net console

在C#控制台应用程序中显示主要/次要版本的最佳方法是什么?

System.Windows.Forms命名空间包含一个ProductVersion类,可用于显示通过Visual Studio项目属性(程序集信息)设置的名称/版本信息。因此,这是我目前的机制:

  

Console.WriteLine(“{0}({1})”,System.Windows.Forms.Application.ProductName,System.Windows.Forms.Application.ProductVersion);

为什么这部分表格?这适用于控制台应用程序吗?

3 个答案:

答案 0 :(得分:53)

Assembly.GetExecutingAssembly().GetName().Version

此外,您仍然可以使用该类,您只需要引用包含的程序集。这不是什么大事。

答案 1 :(得分:8)

Assembly.GetExecutingAssembly().GetName().VersionApplication.ProductVersion不同(但根据您的环境可能还不错。

从Lutz Reflector可以看出,Application.ProductVersion首先尝试使用Assembly.GetEntryAssembly()中的 AssemblyInformationalVersion 属性(如果存在),并且GetEntryAssembly()不为null

否则它使用可执行文件的文件版本。

我认为没有理由不在控制台应用程序中使用Application.ProductVersion

答案 2 :(得分:0)

下面一行呢

Console.WriteLine("FileVersionInfo::ProductVersion : {0}",
  System.Diagnostics.Process.GetCurrentProcess().MainModule.FileVersionInfo.ProductVersion);