Compartir a través de


<supportPortability> (Elemento)

Especifica que una aplicación puede hacer referencia al mismo ensamblado en dos implementaciones diferentes de .NET Framework, deshabilitando el comportamiento predeterminado que trata los ensamblados como equivalentes para los propósitos de portabilidad de aplicación.

<supportPortability PKT="public_key_token" enabled="true|false"/>

Atributos y elementos

En las secciones siguientes se describen los atributos, los elementos secundarios y los elementos primarios.

Atributos

Atributo

Descripción

PKT

Atributo necesario.

Especifica el token de clave pública del ensamblado afectado, como una cadena.

enabled

Atributo opcional.

Especifica si debería habilitar el soporte para la portabilidad entre las implementaciones del ensamblado de .NET Framework especificado.

Atributo enabled

Valor

Descripción

true

Habilite el soporte para la portabilidad entre las implementaciones del ensamblado de .NET Framework especificado. Éste es el valor predeterminado.

false

Deshabilite el soporte para la portabilidad entre las implementaciones del ensamblado de .NET Framework especificado. Esto permite a la aplicación tener referencias a varias implementaciones del ensamblado especificado.

Elementos secundarios

Ninguno.

Elementos primarios

Elemento

Descripción

configuration

Elemento raíz de cada archivo de configuración usado por las aplicaciones de Common Language Runtime y .NET Framework.

runtime

Contiene información del enlace del ensamblado y del recolector de elementos no utilizados.

assemblyBinding

Contiene información sobre la redirección de versiones de ensamblado y las ubicaciones de ensamblados.

Comentarios

Desde .NET Framework versión 4, se proporciona automáticamente compatibilidad para las aplicaciones que pueden utilizar cualquiera de las dos implementaciones de .NET Framework, por ejemplo, la implementación de .NET Framework o de .NET Framework para Silverlight. El enlazador del ensamblado considera equivalentes las dos implementaciones de un ensamblado de .NET Framework particular. En algunos escenarios, esta característica de portabilidad de aplicación produce problemas. En esos escenarios, el elemento <supportPortability> se puede utilizar para deshabilitar la característica.

En tal escenario es un ensamblado tiene que hacer referencia al mismo tiempo a la implementación de .NET Framework y a la implementación de .NET Framework para Silverlight de un ensamblado de referencia determinado. Por ejemplo, un diseñador de XAML escrito en Windows Presentation Foundation (WPF) podría tener que hacer referencia a la implementación del escritorio de WPF, para la interfaz de usuario del diseñador, y al subconjunto de WPF que se incluye en la implementación de Silverlight. De forma predeterminada, las referencias independientes producen un error del compilador, porque el enlace del ensamblado considera los dos ensamblados como equivalentes. Este elemento deshabilita el comportamiento predeterminado y permite que la compilación tenga éxito.

Nota importanteImportante

Para que el compilador pase la información a la lógica de enlace del ensamblado de Common Language Runtime, debe utilizar la opción de compilador /appconfig para especificar la ubicación del archivo app.config que contiene este elemento.

Ejemplo

El siguiente ejemplo permite a una aplicación tener referencias a la implementación de .NET Framework y de .NET Framework para Silverlight de cualquier ensamblado de .NET Framework que exista en ambas implementaciones. La opción del compilador /appconfig se debe utilizar para especificar la ubicación de este archivo app.config.

<configuration>
   <runtime>
      <assemblyBinding>
         <supportPortability PKT="7cec85d7bea7798e" enable="false"/>
         <supportPortability PKT="31bf3856ad364e35" enable="false"/>
      </assemblyBinding>
   </runtime>
</configuration>

Vea también

Conceptos

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

Otros recursos

/appconfig (Opciones del compilador de C#)