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參數的 auri。
例外狀況
uri 是 null。
此實例代表一個相對 URI,且此性質僅適用於絕對 URI。
範例
以下範例會產生兩個 Uri 實例。 路徑資訊的差異會寫入主控台。
// 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 中,則會被忽略。