Uri.GetLeftPart(UriPartial) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает указанную часть экземпляра Uri .
public:
System::String ^ GetLeftPart(UriPartial part);
public string GetLeftPart(UriPartial part);
member this.GetLeftPart : UriPartial -> string
Public Function GetLeftPart (part As UriPartial) As String
Параметры
- part
- UriPartial
Одно из значений перечисления, указывающее конец возвращаемой части URI.
Возвращаемое значение
Указанная часть экземпляра Uri .
Исключения
Текущий Uri экземпляр не является абсолютным экземпляром.
Указанный part параметр недопустим.
Примеры
В следующем примере создается Uri экземпляр и записывается путь к консоли.
// Create Uri
Uri uriAddress = new Uri("http://www.contoso.com/index.htm#search");
Console.WriteLine(uriAddress.Fragment);
Console.WriteLine("Uri {0} the default port ", uriAddress.IsDefaultPort ? "uses" : "does not use");
Console.WriteLine("The path of this Uri is {0}", uriAddress.GetLeftPart(UriPartial.Path));
Console.WriteLine("Hash code {0}", uriAddress.GetHashCode());
// The example displays output similar to the following:
// #search
// Uri uses the default port
// The path of this Uri is http://www.contoso.com/index.htm
// Hash code -988419291
// Create Uri
let uriAddress = Uri "http://www.contoso.com/index.htm#search"
printfn $"{uriAddress.Fragment}"
printfn $"""Uri {if uriAddress.IsDefaultPort then "uses" else "does not use"} the default port """
printfn $"The path of this Uri is {uriAddress.GetLeftPart UriPartial.Path}"
printfn $"Hash code {uriAddress.GetHashCode()}"
// The example displays output similar to the following:
// #search
// Uri uses the default port
// The path of this Uri is http://www.contoso.com/index.htm
// Hash code -988419291
' Create Uri
Dim uriAddress As New Uri("http://www.contoso.com/index.htm#search")
Console.WriteLine(uriAddress.Fragment)
Console.WriteLine("Uri {0} the default port ", If(uriAddress.IsDefaultPort, "uses", "does not use"))
Console.WriteLine("The path of this Uri is {0}", uriAddress.GetLeftPart(UriPartial.Path))
Console.WriteLine("Hash code {0}", uriAddress.GetHashCode())
' The example displays output similar to the following:
' #search
' Uri uses the default port
' The path of this Uri is http://www.contoso.com/index.htm
' Hash code -988419291
Комментарии
Метод GetLeftPart возвращает строку, содержащую самую левую часть строки URI, заканчивая частью, указанной в partпараметре.
Important
Метод GetLeftPart выполняет кодировку символов Юникода и нормализацию в процессе обработки. Это не простой метод обработки строк. Возвращаемая строка может отличаться от исходной строки URI из-за этого поведения кодирования.
Метод GetLeftPart эквивалентен вызову GetComponents с соответствующими UriComponents флагами. Рассмотрим пример.
-
GetLeftPart(UriPartial.Authority)— это эквивалентGetComponents(UriComponents.Scheme | UriComponents.UserInfo | UriComponents.Host | UriComponents.Port, UriFormat.UriEscaped)
GetLeftPart включает разделители в следующих случаях:
- Scheme включает разделитель схемы.
- Authority не включает разделитель пути.
- Path включает разделитель пути и все разделители в исходном URI до разделителя запроса или фрагмента.
- Query включает в Pathсебя запрос и его разделитель.
В следующих примерах показан универсальный код ресурса (URI) и результаты вызова GetLeftPart с Schemeпомощью , AuthorityPathили Query.
| URI | Scheme | Авторитет | Путь | Запрос |
|---|---|---|---|---|
http://www.contoso.com/index.htm?date=today |
http:// |
http://www.contoso.com |
http://www.contoso.com/index.htm |
http://www.contoso.com/index.htm?date=today |
http://www.contoso.com/index.htm#main |
http:// |
http://www.contoso.com |
http://www.contoso.com/index.htm |
http://www.contoso.com/index.htm |
mailto:user@contoso.com?subject=uri |
mailto: |
<none> |
mailto:user@contoso.com |
mailto:user@contoso.com?subject=uri |
nntp://news.contoso.com/123456@contoso.com |
nntp:// |
nntp://news.contoso.com |
nntp://news.contoso.com/123456@contoso.com |
nntp://news.contoso.com/123456@contoso.com |
news:123456@contoso.com |
news: |
<none> |
news:123456@contoso.com |
news:123456@contoso.com |
file://server/filename.ext |
file:// |
file://server |
file://server/filename.ext |
file://server/filename.ext |