Uri.Equals(Object) Método

Definição

Compara duas instâncias de Uri quanto à igualdade.

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

Parâmetros

comparand
Object

O URI ou um identificador de URI a ser comparado com a instância atual.

Retornos

Boolean

true se as duas instâncias representarem o mesmo URI; caso contrário, false.

Exemplos

Este exemplo cria duas Uri instâncias de cadeias de caracteres e as compara para determinar se elas representam o mesmo valor. address1 e address2 são iguais porque a Fragment parte é ignorada para essa comparação. O resultado é gravado no console.

// 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"

Comentários

O Equals método compara as duas instâncias sem considerar as informações do usuário (UserInfo) e as partes de fragmento (Fragment) que elas podem conter. Por exemplo, considerando os URIs http://www.contoso.com/index.htm#search e http://user:password@www.contoso.com/index.htm, o Equals método retornaria true.

Se uma Uri instância for formada com um nome de host Unicode e comparand um parâmetro contiver uma Uri instância ou identificador formado com um nome de host que tenha o nome equivalente do host Punycode, retornará Equals true somente se o IRI (International Resource Identifier) e o suporte ao IDN (Nome de Domínio Internacionalizado) estiverem habilitados. Os nomes Punycode contêm apenas caracteres ASCII e sempre começam com o prefixo xn--.

Para obter mais informações sobre o suporte IRI, consulte a seção Comentários da classe Uri.

Observação

No .NET Framework versões 1.0 e 1.1, o Query também é ignorado.

Observação

O Equals método pode ser substituído em uma classe derivada; tenha cuidado, pois uma entidade mal-intencionada pode modificar o método. Você não deve usar esse método para executar verificações de segurança, a menos que saiba que essa instância veio de uma fonte confiável.

Aplica-se a