Método para la versión de la aplicación en una aplicación de utilidad de consola
Pregunta
¿Cuál es el mejor método para mostrar versiones principales / secundarias en una aplicación de consola C #?
El espacio de nombres System.Windows.Forms incluye una clase ProductVersion que se puede usar para mostrar la información de nombre / versión establecida a través de las propiedades del proyecto de Visual Studio (Información de ensamblaje). Como tal, aquí está mi mecanismo actual:
Console.WriteLine (" {0} ({1}) " ;, System.Windows.Forms.Application.ProductName, System.Windows.Forms.Application.ProductVersion);
¿Por qué es esta parte de los formularios? ¿Es esto apropiado para una aplicación de consola?
Solución
Assembly.GetExecutingAssembly().GetName().Version
Además, aún puede usar la clase, solo tiene que hacer referencia al ensamblaje que lo contiene. No es gran cosa.
Otros consejos
Assembly.GetExecutingAssembly (). GetName (). Version
no es lo mismo que Application.ProductVersion
(pero puede ser lo suficientemente bueno dependiendo de su entorno.
Como puede verse con Lutz Reflector, Application.ProductVersion
intenta utilizar el atributo AssemblyInformationalVersion de Assembly.GetEntryAssembly ()
si es presente, y si GetEntryAssembly ()
no es nulo.
De lo contrario, utiliza la versión del archivo ejecutable.
No veo ninguna razón para no utilizar Application.ProductVersion
en una aplicación de consola.