Type.IsEquivalentTo(Type) 方法

定义

确定两个 COM 类型是否具有相同的标识,以及是否符合类型等效的条件。

public:
 virtual bool IsEquivalentTo(Type ^ other);
public virtual bool IsEquivalentTo (Type? other);
public virtual bool IsEquivalentTo (Type other);
abstract member IsEquivalentTo : Type -> bool
override this.IsEquivalentTo : Type -> bool
Public Overridable Function IsEquivalentTo (other As Type) As Boolean

参数

other
Type

要测试是否与当前类型等效的 COM 类型。

返回

Boolean

如果 COM 类型等效,则为 true;否则为 false。 如果一个类型位于为执行加载的程序集中,而另一个类型位于已加载到仅限反射上下文的程序集中,则此方法也返回 false

注解

从 .NET Framework 4 开始,公共语言运行时支持直接将 COM 类型的类型信息嵌入到托管程序集中,而不需要托管程序集从互操作程序集获取 com 类型的类型信息。 由于嵌入式类型信息仅包含托管程序集实际使用的类型和成员,因此两个托管程序集可能具有相同 COM 类型的不同视图。 每个托管程序集都有不同的 Type 对象来表示其 COM 类型视图。 公共语言运行时支持接口、结构、枚举和委托等不同视图之间的类型等效性。

类型等效性意味着从一个托管程序集传递到另一个托管程序集的 COM 对象可以转换为接收程序集中适当的托管类型。 IsEquivalentTo方法使程序集能够确定从另一个程序集获取的 com 对象与第一个程序集自己的嵌入互操作类型之一具有相同的 com 标识,因此可以强制转换为该类型。

有关详细信息,请参阅 类型等效性和嵌入的互操作类型

适用于