Uri.Equals 方法

定义

重载

Equals(Object)

比较两个相等的 Uri 实例。

Equals(Uri)

比较两个相等的 Uri 实例。

Equals(Object)

Source:
Uri.cs
Source:
Uri.cs
Source:
Uri.cs

比较两个相等的 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 标识符。

返回

如果两个实例表示相同的 URI,则 true;否则,false

示例

此示例从字符串创建两个 Uri 实例,并对其进行比较以确定它们是否表示相同的值。 address1address2 相同,因为此比较将忽略 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)部分。 例如,鉴于 URI http://www.contoso.com/index.htm#searchhttp://user:password@www.contoso.com/index.htmEquals 方法将返回 true

如果使用 Unicode 主机名形成一个 Uri 实例,comparand 参数包含一个 Uri 实例或标识符,该实例或标识符由具有等效的 Punycode 主机名的主机名构成,则仅当启用了国际资源标识符(IRI)和国际化域名(IDN)支持时,Equals 才会返回 true。 Punycode 名称仅包含 ASCII 字符,并且始终以 xn- 前缀开头。

有关 IRI 支持的详细信息,请参阅 Uri 类的“备注”部分。

注意

在 .NET Framework 版本 1.0 和 1.1 中,也会忽略 Query

注意

可以在派生类中重写 Equals 方法;请谨慎,因为恶意实体可以修改该方法。 除非知道此实例来自受信任的源,否则不应使用此方法执行安全检查。

适用于

Equals(Uri)

比较两个相等的 Uri 实例。

public:
 virtual bool Equals(Uri ^ other);
public bool Equals (Uri? other);
override this.Equals : Uri -> bool
Public Function Equals (other As Uri) As Boolean

参数

other
Uri

要与此实例进行比较的 Uri

返回

如果两个实例表示相同的 URI,则 true;否则,false

实现

适用于