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

esa*_*ant 25 .net c# console

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

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

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

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

小智 54

Assembly.GetExecutingAssembly().GetName().Version
Run Code Online (Sandbox Code Playgroud)

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


Joe*_*Joe 8

Assembly.GetExecutingAssembly().GetName().Version是不一样的Application.ProductVersion(但可能足够好,具体取决于您的环境.

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

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

我没有看到任何理由不在Application.ProductVersion控制台应用程序中使用.

  • 我也是,但看起来那些方法在System.Windows.Forms命名空间中位置不好,对吧? (3认同)