<Elemento idn> (Definições de URI)

Especifica se a análise do Nome de Domínio Internacionalizado (IDN) é aplicada a um nome de domínio.

<configuração>
  <URI>
    <idn>

Syntax

<idn
  enabled="All|AllExceptIntranet|None"
/>  

Atributos e Elementos

As secções seguintes descrevem atributos, elementos subordinados e elementos principais.

Atributos

Elemento Descrição
enabled Especifica se a análise do Nome de Domínio Internacionalizado (IDN) é aplicada a um nome de domínio O valor predefinido é nenhum.

Elementos subordinados

Nenhuma

Elementos principais

Elemento Descrição
URI Contém definições que especificam a forma como o .NET Framework processa os endereços Web expressos através de identificadores de recursos uniformes (URIs).

Observações

A classe existente Uri foi expandida no .NET Framework 3.5. 3.0 SP1 e 2.0 SP1 com suporte para Identificadores de Recursos Internacionais (IRI) e Nomes de Domínio Internacionalizados (IDN). Os utilizadores atuais não verão qualquer alteração do comportamento do .NET Framework 2.0, a menos que ativem especificamente o suporte de IRI e IDN. Isto garante a compatibilidade da aplicação com versões anteriores do .NET Framework.

Para ativar o suporte para iRI, são necessárias as duas alterações seguintes:

  1. Adicione a seguinte linha ao ficheiro machine.config no diretório .NET Framework 2.0:

    <section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />  
    
  2. Especifique se pretende que a análise do Nome de Domínio Internacionalizado (IDN) seja aplicada ao nome de domínio e se as regras de análise de IRI devem ser aplicadas. Isto pode ser feito no machine.config ou no ficheiro de app.config.

Existem três valores possíveis para o IDN consoante os servidores DNS utilizados:

  • idn ativado = Tudo

    Este valor irá converter quaisquer nomes de domínio Unicode nos respetivos equivalentes punycode (nomes IDN).

  • idn ativado = AllExceptIntranet

    Este valor irá converter todos os nomes de domínio Unicode não na Intranet local para utilizar os equivalentes punycode (nomes IDN). Neste caso, para processar nomes internacionais na Intranet local, os servidores DNS utilizados para a Intranet devem suportar a resolução de nomes Unicode.

  • IDN ativado = Nenhum

    Este valor não irá converter nomes de domínio Unicode para utilizar Punycode. Este é o valor predefinido que é consistente com o comportamento .NET Framework 2.0.

A ativação da IDN irá converter todas as etiquetas Unicode num nome de domínio para os respetivos equivalentes do Punycode. Os nomes punycode contêm apenas carateres ASCII e começam sempre com o prefixo xn-- . A razão para tal é suportar servidores DNS existentes na Internet, uma vez que a maioria dos servidores DNS suporta apenas carateres ASCII (consulte RFC 3940).

Ficheiros de configuração

Este elemento pode ser utilizado no ficheiro de configuração da aplicação ou no ficheiro de configuração do computador (Machine.config).

Exemplo

O exemplo seguinte mostra uma configuração utilizada pela Uri classe para suportar a análise de IRI e nomes de IDN:

<configuration>
  <uri>
    <idn enabled="All" />
    <iriParsing enabled="true" />
  </uri>
</configuration>

Ver também