Uri.MakeRelativeUri(Uri) Uri.MakeRelativeUri(Uri) Uri.MakeRelativeUri(Uri) Method

定义

确定两个 Uri 实例之间的差异。Determines the difference between two Uri instances.

public:
 Uri ^ MakeRelativeUri(Uri ^ uri);
public Uri MakeRelativeUri (Uri uri);
member this.MakeRelativeUri : Uri -> Uri

参数

uri
Uri Uri Uri

与当前 URI 进行比较的 URI。The URI to compare to the current URI.

返回

如果此 URI 实例与 uri 的主机名和方案相同,则此方法返回一个相对 Uri。若将此相对 URI 追加到当前 URI 实例,就可以得到 uriIf the hostname and scheme of this URI instance and uri are the same, then this method returns a relative Uri that, when appended to the current URI instance, yields uri.

如果主机名或方案不同,则此方法返回一个表示 Uri 参数的 uriIf the hostname or scheme is different, then this method returns a Uri that represents the uri parameter.

异常

此实例代表一个相对 URI,而此属性仅对绝对 URI 有效。This instance represents a relative URI, and this property is valid only for absolute URIs.

示例

下面的示例创建 2Uri实例。The following example creates 2 Uri instances. 中的路径信息的差异写入到控制台。The difference in the path information is written to the console.

// 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.
    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 'SampleMakeRelative

注解

下表显示了 URI 实例, toUri,并调用的结果MakeRelativeUriThe following table shows the URI instance, toUri, and the results of calling MakeRelativeUri.

当前 URI 实例Current URI instance toUri 返回值Return value
http://www.contoso.com/ http://www.contoso.com/test/test.htm test/test.htmtest/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.txttest1/test1.txt

用户信息,如果存在在 URI 中,则忽略。User information, if present in the URI, is ignored.

适用于