Partager via


<supportPortability> Élément

Spécifie qu’une application peut référencer le même assembly dans deux implémentations différentes du .NET Framework, en désactivant le comportement par défaut qui traite les assemblys comme équivalents à des fins de portabilité d’application.

<Configuration>
   <Duree>
     <assemblyBinding>
       <supportPortability>

Syntaxe

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

Attributs et éléments

Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.

Attributes

Caractéristique Descriptif
PKT Attribut obligatoire.

Spécifie le jeton de clé publique de l’assembly concerné, sous forme de chaîne.
enabled Attribut facultatif.

Spécifie si la prise en charge de la portabilité entre les implémentations de l’assembly .NET Framework spécifié doit être activée.

Attribut enabled

Valeur Descriptif
true Activez la prise en charge de la portabilité entre les implémentations de l’assembly .NET Framework spécifié. Il s’agit de la valeur par défaut.
false Désactivez la prise en charge de la portabilité entre les implémentations de l’assembly .NET Framework spécifié. Cela permet à l’application d’avoir des références à plusieurs implémentations de l’assembly spécifié.

Éléments enfants

Aucun.

Éléments parents

Élément Descriptif
configuration Élément racine de chaque fichier de configuration utilisé par le Common Language Runtime et les applications .NET Framework.
runtime Contient des informations sur la liaison d’assembly et le garbage collection.
assemblyBinding Contient des informations sur la redirection de version d’assembly et les emplacements des assemblys.

Remarques

À compter du .NET Framework 4, la prise en charge est automatiquement fournie pour les applications qui peuvent utiliser l’une des deux implémentations du .NET Framework, par exemple l’implémentation .NET Framework ou le .NET Framework pour l’implémentation Silverlight. Les deux implémentations d’un assembly .NET Framework particulier sont considérées comme équivalentes par le classeur d’assemblys. Dans quelques scénarios, cette fonctionnalité de portabilité d’application provoque des problèmes. Dans ces scénarios, l’élément <supportPortability> peut être utilisé pour désactiver la fonctionnalité.

Un tel scénario est un assembly qui doit faire référence à la fois à l’implémentation .NET Framework et à l’implémentation .NET Framework pour Silverlight d’un assembly de référence particulier. Par exemple, un concepteur XAML écrit dans Windows Presentation Foundation (WPF) peut avoir besoin de référencer à la fois l’implémentation wpF Desktop, pour l’interface utilisateur du concepteur et le sous-ensemble de WPF inclus dans l’implémentation Silverlight. Par défaut, les références séparées provoquent une erreur du compilateur parce que la liaison d’assembly considère les deux assemblys comme équivalents. Cet élément désactive le comportement par défaut et permet la compilation de réussir.

Important

Pour que le compilateur passe les informations à la logique de liaison d’assembly du Common Language Runtime, vous devez utiliser l’option /appconfig du compilateur pour spécifier l’emplacement du fichier app.config qui contient cet élément.

Example

L’exemple suivant permet à une application d’avoir des références à l’implémentation de .NET Framework et à l’implémentation .NET Framework pour Silverlight de n’importe quel assembly .NET Framework qui existe dans les deux implémentations. L’option /appconfig du compilateur doit être utilisée pour spécifier l’emplacement de ce fichier app.config.

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

Voir aussi