Compartilhar via


<idn> Elemento (configurações de Uri)

Especifica se a análise de IDN (Nome de Domínio Internacionalizado) será aplicada ao nome de domínio.

<configuração>
  <uri>
    <idn>

Syntax

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

Atributos e elementos

As seções a seguir descrevem atributos, elementos filho e elementos pai.

Atributos

Element Descrição
enabled Especifica se a análise de IDN (Nome de Domínio Internacionalizado) será aplicada aos nomes de domínio. O valor padrão é nada.

Elementos filho

Nenhum

Elementos pai

Element Descrição
uri Contém as configurações que especificam como o .NET Framework lida com endereços da Web expressos usando URI (Uniform Resource Identifier).

Comentários

A classe Uri existente foi estendida no .NET Framework 3.5. 3.0 SP1 e 2.0 SP1 com suporte a IRI (Identificador de Recurso Internacional) e IDN (Nomes de Domínio Internacionalizados). Os usuários atuais não verão alterações no comportamento do .NET Framework 2.0, a menos que habilitem especificamente o suporte para IRI e IDN. Isso garante a compatibilidade do aplicativo com versões anteriores do .NET Framework.

Para habilitar o suporte a IRI, as duas alterações a seguir serão necessárias:

  1. Adicione a seguinte linha ao arquivo 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. Especificar se a análise do IDN (nome de domínio internacionalizado) deve ser aplicada ao nome do domínio e se as regras de análise do IRI devem ser aplicadas. Isso pode ser feito no arquivo machine.config ou em app.config.

Há três valores possíveis para IDN, dependendo dos servidores DNS que são usados:

  • idn habilitado = Todos

    Esse valor converterá todos os nomes de domínio Unicode em seus equivalentes do Punycode (nomes IDN).

  • idn habilitado = AllExceptIntranet

    Esse valor converterá todos os nomes de domínio Unicode não na intranet local para usar os equivalentes do Punycode (nomes IDN). Nesse caso, para manipular nomes internacionais na Intranet local, os servidores DNS usados para a Intranet devem dar suporte a resolução de nomes Unicode.

  • idn habilitado = Nenhum

    Esse valor não converterá nenhum nome de domínio Unicode para usar o Punycode. Esse é o valor padrão, que é consistente com o comportamento do .NET Framework 2.0.

Habilitar o IDN converterá todos os rótulos Unicode de um nome de domínio para seus equivalentes em Punycode. Os nomes Punycode contêm apenas caracteres ASCII e sempre começam com o prefixo xn--. A razão para isso é dar suporte a servidores DNS existentes na Internet, pois a maioria dos servidores DNS dá suporte somente a caracteres ASCII (consulte RFC 3940).

Arquivos de configuração

Esse elemento pode ser usado no arquivo de configuração de aplicativo ou no arquivo de configuração do computador (Machine.config).

Exemplo

O exemplo a seguir mostra uma configuração usada pela classe Uri para dar suporte à análise de IRI e nomes IDN:

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

Confira também