Language

Uri.MakeRelativeUri(Uri) メソッド

定義

2 つの 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 = 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 にユーザー情報が存在する場合は無視されます。

適用対象