Usar atributos AssemblyVersion y AssemblyFileVersion

En este artículo se presenta cómo usar AssemblyVersion y AssemblyFileVersion atributos en el archivo AssemblyInfo.cs.

Versión original del producto: .NET Framework
Número de KB original: 556041

Resumen

AssemblyInfo.cs proporciona dos atributos para establecer dos tipos diferentes de versiones. En esta sugerencia se muestra cómo usar esos dos atributos.

Microsoft .NET Framework ofrece la oportunidad de establecer dos tipos diferentes de números de versión en cada ensamblado.

AssemblyVersion

Es el número de versión usado por el marco durante la compilación y en tiempo de ejecución para buscar, vincular y cargar los ensamblados. Al agregar referencia a cualquier ensamblado del proyecto, es este número de versión el que se inserta. En tiempo de ejecución, Common Language Runtime (CLR) busca ensamblado con este número de versión para cargar. Pero recuerde que esta versión se usa junto con el nombre, el token de clave pública y la información de referencia cultural solo si los ensamblados están firmados con nombre seguro. Si los ensamblados no tienen un nombre seguro firmado, solo se usan nombres de archivo para la carga.

AssemblyFileVersion

Es el número de versión dado al archivo como en el sistema de archivos. Lo muestra el Explorador de Windows y nunca lo usa .NET Framework ni el entorno de ejecución para hacer referencia.

Atributos en AssemblyInfo.cs

// Version information for an assembly consists of the following four values:
// Major Version
// Minor Version
// Build Number
// Revision
[assembly: AssemblyVersion("1.0.0.0")]  
[assembly: AssemblyFileVersion("1.0.0.0")]

Si se proporciona un (*) en lugar de un número absoluto, el compilador aumenta el número en uno cada vez que se compila.

Supongamos que va a compilar un ensamblado de marco para el proyecto que usan muchos desarrolladores al compilar los ensamblados de aplicación. Si publica la nueva versión del ensamblado con frecuencia, por ejemplo, una vez al día y si los ensamblados tienen un nombre seguro, los desarrolladores tendrán que cambiar la referencia cada vez que publique el nuevo ensamblado. Puede ser engorroso y también puede dar lugar a referencias incorrectas. Una mejor opción en estos escenarios de grupo cerrado y volátil sería corregir AssemblyVersion y cambiar solo .AssemblyFileVersion Use el número de versión del archivo de ensamblado para comunicar la versión más reciente del ensamblado. En este caso, los desarrolladores no tendrán que cambiar las referencias y pueden sobrescribir el ensamblado en la ruta de acceso de referencia. En las compilaciones de versión central o final tiene más sentido cambiar y AssemblyVersion mantener la AssemblyFileVersion misma versión de ensamblado.