Uri.MakeRelativeUri(Uri) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
确定两个 Uri 实例之间的差异。
public:
Uri ^ MakeRelativeUri(Uri ^ uri);
public Uri MakeRelativeUri (Uri uri);
member this.MakeRelativeUri : Uri -> Uri
Public Function MakeRelativeUri (uri As Uri) As Uri
参数
- uri
- Uri
与当前 URI 进行比较的 URI。
返回
如果此 URI 实例与 uri
的主机名和方案相同,则此方法返回一个相对 Uri。若将此相对 URI 追加到当前 URI 实例,就可以得到 uri
。
如果主机名或方案不同,则此方法返回一个表示 Uri 参数的 uri
。
例外
uri
为 null
。
此实例代表一个相对 URI,而此属性仅对绝对 URI 有效。
示例
以下示例创建 2 Uri 个实例。 路径信息的差异将写入控制台。
// Create a base Uri.
Uri^ address1 = gcnew Uri( "http://www.contoso.com/" );
// Create a new Uri from a string.
Uri^ address2 = gcnew Uri( "http://www.contoso.com/index.htm?date=today" );
// Determine the relative Uri.
Console::WriteLine( "The difference is {0}", address1->MakeRelativeUri( address2 ) );
// Create a base Uri.
Uri address1 = new Uri("http://www.contoso.com/");
// Create a new Uri from a string.
Uri address2 = new Uri("http://www.contoso.com/index.htm?date=today");
// Determine the relative Uri.
Console.WriteLine("The difference is {0}", address1.MakeRelativeUri(address2));
// Create a base Uri.
let address1 = Uri "http://www.contoso.com/"
// Create a new Uri from a string.
let address2 = Uri "http://www.contoso.com/index.htm?date=today"
// Determine the relative Uri.
printfn $"The difference is {address1.MakeRelativeUri address2}"
' Create a base Uri.
Dim address1 As New Uri("http://www.contoso.com/")
' Create a new Uri from a string.
Dim address2 As New Uri("http://www.contoso.com/index.htm?date=today")
' Determine the relative Uri.
Console.WriteLine("The difference is {0}", address1.MakeRelativeUri(address2))
End Sub
注解
下表显示了 URI 实例 toUri
和调用 MakeRelativeUri结果。
当前 URI 实例 | toUri |
返回值 |
---|---|---|
http://www.contoso.com/ |
http://www.contoso.com/test/test.htm |
test/test.htm |
http://www.contoso.com/test1/ |
http://www.contoso.com/ |
../ |
http://www.contoso.com:8000/ |
http://www.contoso.com/test/test.htm |
http://www.contoso.com/test/test.htm |
http://username@www.contoso.com/ |
http://www.contoso.com/test1/test1.txt |
test1/test1.txt |
用户信息(如果存在于 URI 中)将被忽略。