Ler em inglês

Compartilhar via


Uri.OriginalString Propriedade

Definição

Obtém a cadeia de caracteres do URI original que foi passada para o construtor Uri.

C#
public string OriginalString { get; }

Valor da propriedade

O URI exato especificado quando essa instância foi construída; caso contrário, Empty.

Exemplos

O exemplo a seguir cria uma nova Uri instância de uma cadeia de caracteres. Ele ilustra a diferença entre o valor retornado de , que retorna a cadeia de OriginalStringcaracteres que foi passada para o construtor e de uma chamada para ToString, que retorna a forma canônica da cadeia de caracteres.

C#
// Create a new Uri from a string address.
Uri uriAddress = new Uri("HTTP://www.ConToso.com:80//thick%20and%20thin.htm");

// Write the new Uri to the console and note the difference in the two values.
// ToString() gives the canonical version. OriginalString gives the original
// string that was passed to the constructor.

// The following outputs "http://www.contoso.com//thick and thin.htm".
Console.WriteLine(uriAddress.ToString());

// The following outputs "HTTP://www.ConToso.com:80//thick%20and%20thin.htm".
Console.WriteLine(uriAddress.OriginalString);

Comentários

Se o URI especificado para o construtor contiver espaços à esquerda ou à direita, esses espaços serão preservados.

O valor retornado por essa propriedade difere de ToString e AbsoluteUri. ToString retorna a forma canonicamente sem escape do URI. AbsoluteUri retorna a forma de escape canônico do URI.

Quando o suporte ao IRI (International Resource Identifier) e ao IDN (Nome de Domínio Internacionalizado) estiverem habilitados, OriginalString retornará a cadeia de caracteres original não normalizada com o nome do host punycode se um tiver sido usado para inicializar a Uri instância. Os nomes Punycode contêm apenas caracteres ASCII e sempre começam com o prefixo xn--.

Para obter mais informações sobre o suporte IRI, consulte a seção Comentários da classe Uri.

Quando um Uri objeto é serializado, o OriginalString não é preservado. O processo de serialização usa a propriedade totalmente escapada e canônica AbsoluteUri ao serializar. Para um Uri que contém um endereço IPv6, o endereço IPv6 e a ID de escopo são incluídos no objeto serializado Uri .

Aplica-se a

Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0