Поделиться через


Uri.OriginalString Свойство

Определение

Возвращает исходную строку универсального кода ресурса, переданную в конструктор Uri.

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

Значение свойства

Точный URI, указанный при создании этого экземпляра; в противном случае — Empty.

Примеры

В следующем примере создается новый Uri экземпляр из строки. Она демонстрирует разницу между значением, возвращаемым из OriginalString, который возвращает строку, переданную конструктору, и из вызова ToString, который возвращает каноническую форму строки.

// 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

Комментарии

Если URI, указанный в конструкторе, содержит начальные или конечные пробелы, эти пробелы сохраняются.

Значение, возвращаемое этим свойством, отличается от ToString и AbsoluteUri. ToString возвращает канонически неэкранированную форму URI. AbsoluteUri возвращает канонически экранированную форму универсального кода ресурса (URI).

Если включена поддержка международного идентификатора ресурса (IRI) и международного доменного имени (IDN), возвращает исходную ненормализованную строку с именем узла Punycode, OriginalString если она использовалась для инициализации экземпляра Uri . Имена Punicode содержат только символы ASCII и всегда начинаются с префикса "xn--".

Дополнительные сведения о поддержке IRI см. в разделе Примечания Uri для класса .

Uri При сериализации OriginalString объекта объект не сохраняется. При сериализации в процессе сериализации используется полностью экранированное и каноническое AbsoluteUri свойство. Для объекта Uri , содержащего IPv6-адрес, IPv6-адрес и идентификатор область включаются в сериализованный Uri объект.

Применяется к