Compartir a través de


Información general sobre la unificación de ensamblados de .NET Framework

Actualización: noviembre 2007

.NET Framework está formado por Common Language Runtime y por, aproximadamente, dos docenas de ensamblados que componen la biblioteca de tipos. El motor en tiempo de ejecución trata los ensamblados de .NET Framework como una sola unidad. Por ejemplo, la versión 1.0 de .NET Framework se compone de la versión 1.0.3705 del motor de ejecución y de la versión 1.0.3300.0 de los ensamblados de .NET Framework. Una aplicación o componente que sea compatible con una versión especifica de .NET Framework funciona con la versión suministrada del motor en tiempo de ejecución y de los ensamblados de .NET Framework.

De forma predeterminada, el motor en tiempo de ejecución carga sólo los ensamblados de .NET Framework que pertenezcan a la versión del motor en tiempo de ejecución cargada en un proceso. Cuando se inicia una aplicación, todas las referencias a tipos en el código que ejecuta el motor en tiempo de ejecución se dirigen a los ensamblados de .NET Framework que tengan el mismo número de versión que el motor en tiempo de ejecución cargado en un proceso. La unificación de los ensamblados de .NET Framework impide al motor en tiempo de ejecución cargar ensamblados de diferentes versiones de .NET Framework, a no ser que específicamente se indique lo contrario.

Unificación de ensamblados y componentes

La aplicación determina la versión del motor en tiempo de ejecución que se debe utilizar. El proceso de unificación incluye cualquier componente que se utilice en la aplicación. Una aplicación puede redirigir un componente utilizado para que se ejecute con una versión específica del motor en tiempo de ejecución. Los componentes compilados con una versión del motor en tiempo de ejecución se pueden redirigir para que utilicen otra versión.

En la siguiente ilustración, la aplicación MyApp utiliza dos componentes, Comp A y Comp B. MyApp y Comp A se crearon con la versión 1.0 del motor en tiempo de ejecución, por tanto, contienen referencias estáticas a la versión 1.0 del motor en tiempo de ejecución. El componente Comp B contiene una referencia estática a un ensamblado de .NET Framework suministrado con la versión 1.1 del motor en tiempo de ejecución pero, debido a la unificación, se redirige para que se ejecute con la versión del ensamblado de .NET Framework suministrada con la versión 1.0 del motor en tiempo de ejecución.

La unificación de ensamblados puede redirigir el enlace de ensamblados

Las aplicaciones pueden reemplazar este comportamiento predeterminado de cualquier ensamblado si se proporciona la información de redirección del enlace en el archivo de configuración de la aplicación. Estos reemplazos redireccionan el motor en tiempo de ejecución para utilizar una versión específica de un ensamblado de .NET Framework sin que afecte a los ensamblados de .NET Framework cargados. Para obtener más información, vea Redirección de enlace de ensamblados.

Nota:

Los ensamblados de la versión 1.0 de .NET Framework no están unificados. El único modo de indicar al motor en tiempo de ejecución que utilice un ensamblado de .NET Framework que no sea de la versión 1.0 consiste en crear un archivo de configuración que contenga el atributo appliesTo en el elemento <assemblyBinding>. Para obtener más información sobre cómo redirigir los ensamblados de la versión 1.0 de .NET Framework, vea Especificar una versión de .NET Framework.

Vea también

Conceptos

Determinar qué versión del motor en tiempo de ejecución debe cargarse

Redirección del enlace de ensamblados

Otros recursos

Fundamentos de la ejecución simultánea