在C#控制台应用程序中显示主要/次要版本的最佳方法是什么?
System.Windows.Forms命名空间包含一个ProductVersion类,可用于显示通过Visual Studio项目属性(程序集信息)设置的名称/版本信息.因此,这是我目前的机制:
Console.WriteLine("{0}({1})",System.Windows.Forms.Application.ProductName,System.Windows.Forms.Application.ProductVersion);
为什么这部分表格?这适用于控制台应用程序吗?
Assembly.GetExecutingAssembly().GetName().Version
此外,您仍然可以使用该类,您只需要引用包含的程序集.这没什么大不了的.
Assembly.GetExecutingAssembly().GetName().Version
是不一样的Application.ProductVersion
(但可能足够好,具体取决于您的环境.
从Lutz Reflector可以看出,Application.ProductVersion
首先尝试使用AssemblyInformationalVersion属性,Assembly.GetEntryAssembly()
如果它存在,并且if GetEntryAssembly()
不为null.
否则,它使用可执行文件的文件版本.
我没有看到任何理由不在Application.ProductVersion
控制台应用程序中使用.