Каков лучший метод для отображения главных / вспомогательных версий в консольном приложении C#?
System.Windows.Forms
пространство имен включает a ProductVersion
класс, который может использоваться для отображения набора имени/информации о версии через свойства проекта Visual Studio (информация о блоке). По сути, вот мой текущий механизм:
Console.WriteLine("{0} ({1})",
System.Windows.Forms.Application.ProductName,
System.Windows.Forms.Application.ProductVersion);
Почему имеет эта часть Forms
? Действительно ли это подходит для Консольного приложения?
Assembly.GetExecutingAssembly().GetName().Version
кроме того, можно все еще использовать класс, просто необходимо сослаться на содержание блока. Это не важная персона.
Assembly.GetExecutingAssembly().GetName().Version
не то же как Application.ProductVersion
(но может быть достаточно хорошим в зависимости от Вашей среды.
Как видно с Отражателем Лутца, Application.ProductVersion
первые попытки использовать атрибут AssemblyInformationalVersion от Assembly.GetEntryAssembly()
, если это присутствует, и если GetEntryAssembly()
не является пустым.
Иначе это использует версию файла исполняемого файла.
я не вижу оснований для не использования Application.ProductVersion
в консольном приложении.