Uri.GetLeftPart(UriPartial) 方法

定义

获取 Uri 实例的指定部分。

C#
public string GetLeftPart (UriPartial part);

参数

part
UriPartial

指定要返回的 URI 部分末尾的枚举值之一。

返回

Uri 实例的指定部分。

例外

当前 Uri 实例不是绝对实例。

指定的 part 无效。

示例

以下示例创建 一个 Uri 实例,并将路径写入控制台。

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

注解

方法 GetLeftPart 返回一个字符串,其中包含 URI 字符串的最左侧部分,以 指定的 part部分结尾。

GetLeftPart 在以下情况下包括分隔符:

  • Scheme 包括方案分隔符。
  • Authority 不包括路径分隔符。
  • Path 包括路径分隔符以及原始 URI 中到查询或片段分隔符的任何分隔符。
  • Query 包括 , Path以及查询及其分隔符。

以下示例演示 URI 以及使用 SchemeAuthorityPathQuery调用 GetLeftPart 的结果。

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

适用于

产品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 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 2.0, 2.1