共用方式為


Uri.MakeRelativeUri(Uri) 方法

定義

判斷兩個 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

例外狀況

urinull

這個執行個體代表相對的 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 中,則會忽略使用者資訊。

適用於