<supportPortability Element (Elemento supportPortability> )
Especifica que uma aplicação pode referenciar a mesma assemblagem em duas implementações diferentes do .NET Framework, ao desativar o comportamento predefinido que trata as assemblagens como equivalente para fins de portabilidade de aplicações.
<configuração>
<runtime>
<assemblyBinding>
<supportPortability>
Syntax
<supportPortability PKT="public_key_token" enabled="true|false"/>
Atributos e Elementos
As secções seguintes descrevem atributos, elementos subordinados e elementos principais.
Atributos
Atributo | Descrição |
---|---|
PKT | Atributo obrigatório. Especifica o token de chave pública da assemblagem afetada, como uma cadeia. |
ativado | Atributo opcional. Especifica se o suporte para portabilidade entre implementações da assemblagem de .NET Framework especificada deve ser ativado. |
Atributo ativado
Valor | Descrição |
---|---|
true | Ative o suporte para portabilidade entre implementações da assemblagem de .NET Framework especificada. Esta é a predefinição. |
false | Desative o suporte para portabilidade entre implementações da assemblagem de .NET Framework especificada. Isto permite que a aplicação tenha referências a múltiplas implementações da assemblagem especificada. |
Elementos Subordinados
Nenhum.
Elementos Principais
Elemento | Descrição |
---|---|
configuration |
O elemento raiz em cada ficheiro de configuração utilizado pelo runtime de linguagem comum e .NET Framework aplicações. |
runtime |
Contém informações sobre o enlace de montagem e a libertação da memória. |
assemblyBinding |
Contém informações sobre o redirecionamento da versão de assemblagem e as localizações das assemblagens. |
Observações
A partir do .NET Framework 4, o suporte é fornecido automaticamente para aplicações que podem utilizar qualquer uma das duas implementações do .NET Framework, por exemplo, a implementação .NET Framework ou o .NET Framework para a implementação do Silverlight. As duas implementações de uma determinada assemblagem .NET Framework são vistas como equivalentes pelo enlace de assemblagem. Em alguns cenários, esta funcionalidade de portabilidade da aplicação causa problemas. Nesses cenários, o <supportPortability>
elemento pode ser utilizado para desativar a funcionalidade.
Um desses cenários é uma assemblagem que tem de referenciar a implementação .NET Framework e o .NET Framework para a implementação do Silverlight de uma assemblagem de referência específica. Por exemplo, um estruturador XAML escrito no Windows Presentation Foundation (WPF) poderá ter de referenciar a implementação do WPF Desktop, a interface de utilizador do estruturador e o subconjunto do WPF incluído na implementação do Silverlight. Por predefinição, as referências separadas causam um erro de compilador, uma vez que o enlace de assemblagem vê as duas assemblagens como equivalentes. Este elemento desativa o comportamento predefinido e permite que a compilação seja bem-sucedida.
Importante
Para que o compilador transmita as informações para a lógica de enlace de assemblagem do runtime de linguagem comum, tem de utilizar a opção /appconfig
de compilador para especificar a localização do ficheiro app.config que contém este elemento.
Exemplo
O exemplo seguinte permite que uma aplicação tenha referências à implementação .NET Framework e ao .NET Framework para a implementação do Silverlight de qualquer assemblagem .NET Framework que exista em ambas as implementações. A /appconfig
opção do compilador tem de ser utilizada para especificar a localização deste ficheiro app.config.
<configuration>
<runtime>
<assemblyBinding>
<supportPortability PKT="7cec85d7bea7798e" enable="false"/>
<supportPortability PKT="31bf3856ad364e35" enable="false"/>
</assemblyBinding>
</runtime>
</configuration>