Uri.Equals(Object) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Porównuje dwa Uri wystąpienia pod kątem równości.
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
Parametry
- comparand
- Object
Identyfikator URI lub identyfikator URI do porównania z bieżącym wystąpieniem.
Zwraca
true
jeśli dwa wystąpienia reprezentują ten sam identyfikator URI; w przeciwnym razie , false
.
Przykłady
W tym przykładzie są tworzone dwa Uri wystąpienia z ciągów i porównuje je w celu określenia, czy reprezentują one tę samą wartość. address1
i address2
są takie same, ponieważ Fragment część jest ignorowana dla tego porównania. Wynik jest zapisywany w konsoli.
// 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"
Uwagi
Metoda Equals porównuje dwa wystąpienia bez względu na informacje o użytkowniku (UserInfo) i fragmenty (Fragment), które mogą zawierać. Na przykład, biorąc pod uwagę identyfikatory http://www.contoso.com/index.htm#search
URI i http://user:password@www.contoso.com/index.htm
, Equals metoda zwróci true
wartość .
Jeśli jedno Uri wystąpienie jest tworzone z nazwą hosta Unicode i comparand
parametr zawiera Uri wystąpienie lub identyfikator, który jest tworzony z nazwą hosta o równoważnej nazwie hosta Punycode, zwraca true
tylko wtedy, Equals gdy jest włączona obsługa międzynarodowego identyfikatora zasobów (IRI) i międzynarodowych nazw domen (IDN). Nazwy punycode zawierają tylko znaki ASCII i zawsze zaczynają się od prefiksu xn-- .
Aby uzyskać więcej informacji na temat obsługi IRI, zobacz sekcję Uri Uwagi dla klasy.
Uwaga
W .NET Framework w wersji 1.0 i 1.1 Query element jest również ignorowany.
Uwaga
Metodę Equals można zastąpić w klasie pochodnej. Należy zachować ostrożność, ponieważ złośliwa jednostka może zmodyfikować metodę. Nie należy używać tej metody do przeprowadzania kontroli zabezpieczeń, chyba że wiadomo, że to wystąpienie pochodzi z zaufanego źródła.