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 имеет значение 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

Комментарии

В следующей таблице показаны экземпляр toUriURI и результаты вызова 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, игнорируются.

Применяется к