Compartir por


Versiones de ensamblado

Todas las versiones de los ensamblados que usan Common Language Runtime se realizan en el nivel de ensamblado. La versión específica de un ensamblado y las versiones de los ensamblados dependientes se registran en el manifiesto del ensamblado. La directiva de versión predeterminada para el entorno de ejecución es que las aplicaciones solo se ejecutan con las versiones con las que se compilaron y probaron, a menos que la directiva de versión explícita se invalide en los archivos de configuración (el archivo de configuración de la aplicación, el archivo de directiva de publicador y el archivo de configuración de administrador del equipo).

El motor en tiempo de ejecución ejecuta varios pasos para resolver la solicitud de enlace de un ensamblado:

  1. Comprueba la referencia del ensamblado original para determinar la versión del ensamblado que se va a enlazar.

  2. Verifica todos los archivos de configuración aplicables para aplicar la directiva de versión.

  3. Determina el ensamblado correcto a partir de la referencia de ensamblado original y de cualquier redireccionamiento especificado en los archivos de configuración, y define la versión que se debe enlazar al ensamblado que llama.

  4. Comprueba la caché global de ensamblados, los códigos base especificados en los archivos de configuración y, a continuación, comprueba el directorio y los subdirectorios de la aplicación mediante las reglas de sondeo que se explican en Cómo el tiempo de ejecución localiza ensamblados.

En la ilustración siguiente se muestran estos pasos:

Diagrama en el que se muestran los pasos para la resolución de la solicitud de enlace de ensamblados.

Para obtener más información sobre cómo configurar aplicaciones, consulte Configurar aplicaciones. Para obtener más información sobre la directiva de enlace, consulte Cómo el entorno de ejecución localiza ensamblados.

Información de versión

Cada ensamblado tiene dos formas distintas de expresar la información de la versión:

  • El número de versión del ensamblado, que, junto con la información del nombre y cultura del ensamblado, forma parte de la identidad del ensamblado. El tiempo de ejecución usa este número para garantizar el cumplimiento de la política de versión y desempeña un papel fundamental en el proceso de resolución de tipos en tiempo de ejecución.

  • Una versión informativa, que es una cadena que representa información de versión adicional incluida únicamente con fines informativos.

Número de versión del ensamblado

Cada ensamblado tiene un número de versión como parte de su identidad. Por lo tanto, el tiempo de ejecución considera que dos ensamblados que difieren según el número de versión son ensamblados completamente diferentes. Este número de versión se representa físicamente como una cadena de cuatro partes con el siguiente formato:

< versión mayor>.<versión menor>.<número de compilación>.<revisión>

Por ejemplo, la versión 1.5.1254.0 indica 1 como versión principal, 5 como versión secundaria, 1254 como número de compilación y 0 como número de revisión.

El número de versión se almacena en el manifiesto de ensamblado junto con otra información de identidad, incluido el nombre del ensamblado y la clave pública, así como información sobre las relaciones e identidades de otros ensamblados conectados a la aplicación.

Cuando se compila un ensamblado, la herramienta de desarrollo registra información de dependencia para cada ensamblado al que se hace referencia en el manifiesto del ensamblado. El tiempo de ejecución usa estos números de versión, junto con la información de configuración establecida por un administrador, una aplicación o un publicador, para cargar la versión adecuada de un ensamblado al que se hace referencia.

El entorno de ejecución distingue entre ensamblados regulares y ensamblados con nombre seguro a efectos de control de versiones. La comprobación de versión sólo se produce para los ensamblados con nombres seguros.

Para obtener información sobre cómo especificar directivas de enlace de versiones, consulte Configuración de aplicaciones. Para obtener información sobre cómo el tiempo de ejecución usa la información de versión para buscar un ensamblado determinado, consulte How the runtime locates assemblies (Cómo busca el runtime los ensamblados).

Versión informativa del ensamblado

La versión informativa es una cadena que adjunta información adicional de versión a un ensamblado solo con fines informativos; esta información no se usa en tiempo de ejecución. La versión informativa en texto corresponde a la literatura de marketing, el empaquetado o el nombre del producto y no se utiliza durante la ejecución. Por ejemplo, una versión informativa podría ser "Common Language Runtime versión 1.0" o "NET Control SP 2". En la pestaña Versión del cuadro de diálogo de propiedades del archivo en Microsoft Windows, esta información aparece en el elemento "Versión del producto".

Nota:

Aunque puede especificar cualquier texto, aparece un mensaje de advertencia en la compilación si la cadena no está en el formato usado por el número de versión del ensamblado, o si está en ese formato, pero contiene caracteres comodín. Esta advertencia es inofensiva.

La versión informativa se representa mediante el atributo System.Reflection.AssemblyInformationalVersionAttributepersonalizado . Para obtener más información sobre el atributo de versión informativa, vea Establecer atributos de ensamblado.

Consulte también