Uri.Equals(Object) Метод

Определение

Сравнивает два экземпляра Uri на предмет их равенства.

public:
 override bool Equals(System::Object ^ comparand);
public override bool Equals (object comparand);
public override bool Equals (object? comparand);
override this.Equals : obj -> bool
Public Overrides Function Equals (comparand As Object) As Boolean

Параметры

comparand
Object

URI или идентификатор URI, сравниваемый с текущим экземпляром.

Возвращаемое значение

Boolean

Значение true, если два экземпляра представляют один и тот же URI; в противном случае — значение false.

Примеры

В этом примере создаются два Uri экземпляра из строк и сравниваются, чтобы определить, представляют ли они одно и то же значение. address1 и address2 те же, так как часть Fragment игнорируется для этого сравнения. Результат записывается в консоль.

// Create some Uris.
Uri^ address1 = gcnew Uri( "http://www.contoso.com/index.htm#search" );
Uri^ address2 = gcnew Uri( "http://www.contoso.com/index.htm" );
if ( address1->Equals( address2 ) )
{
   Console::WriteLine( "The two addresses are equal" );
}
else
{
   Console::WriteLine( "The two addresses are not equal" );
}
// Will output "The two addresses are equal"
// Create some Uris.
Uri address1 = new Uri("http://www.contoso.com/index.htm#search");
Uri address2 = new Uri("http://www.contoso.com/index.htm");
if (address1.Equals(address2))
    Console.WriteLine("The two addresses are equal");
else
    Console.WriteLine("The two addresses are not equal");
// Will output "The two addresses are equal"
// Create some Uris.
let address1 = Uri "http://www.contoso.com/index.htm#search"
let address2 = Uri "http://www.contoso.com/index.htm"
if address1.Equals address2 then
    printfn "The two addresses are equal"
else
    printfn "The two addresses are not equal"
// Will output "The two addresses are equal"
' Create some Uris.
Dim address1 As New Uri("http://www.contoso.com/index.htm#search")
Dim address2 As New Uri("http://www.contoso.com/index.htm")
If address1.Equals(address2) Then
    Console.WriteLine("The two addresses are equal")
Else
    Console.WriteLine("The two addresses are not equal")
End If
' Will output "The two addresses are equal"

Комментарии

Этот Equals метод сравнивает два экземпляра без учета сведений о пользователе (UserInfo) и фрагментах (Fragment) частей, которые они могут содержать. Например, учитывая универсальные коды http://www.contoso.com/index.htm#search ресурса (URI) и http://user:password@www.contoso.com/index.htmметод Equals возвращает .true

Если один Uri экземпляр сформирован с именем узла Юникода и comparand параметром содержит Uri экземпляр или идентификатор, сформированный с именем узла с эквивалентным именем узла Punycode, то возвращается true только в том случае, Equals если включена поддержка международного идентификатора ресурса (IRI) и международного доменного имени (IDN). Имена Punicode содержат только символы ASCII и всегда начинаются с префикса "xn--".

Дополнительные сведения о поддержке IRI см. в Uri разделе "Примечания" для класса.

Примечание

В платформа .NET Framework версии 1.0 и 1.1 Query также игнорируется.

Примечание

Метод Equals можно переопределить в производном классе; используйте осторожность, так как вредоносная сущность может изменить метод. Этот метод не следует использовать для проверки безопасности, если вы не знаете, что этот экземпляр получен из надежного источника.

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