Compartilhar via


Uri.OriginalString Propriedade

Definição

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

public:
 property System::String ^ OriginalString { System::String ^ get(); };
public string OriginalString { get; }
member this.OriginalString : string
Public ReadOnly Property OriginalString As String

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.

// Create a new Uri from a string address.
Uri^ uriAddress = gcnew 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 );

// The following outputs "HTTP://www.ConToso.com:80//thick%20and%20thin.htm".
Console::WriteLine( uriAddress->OriginalString );
// 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);
// Create a new Uri from a string address.
let uriAddress = 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".
printfn $"{uriAddress.ToString()}"

// The following outputs "HTTP://www.ConToso.com:80//thick%20and%20thin.htm".
printfn $"{uriAddress.OriginalString}"
    ' Create a new Uri from a string address.
    Dim uriAddress As 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)

End Sub

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