MethodBase.ContainsGenericParameters 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取一个值,该值指示泛型方法是否包含未赋值的泛型类型参数。
public:
virtual property bool ContainsGenericParameters { bool get(); };
public virtual bool ContainsGenericParameters { get; }
member this.ContainsGenericParameters : bool
Public Overridable ReadOnly Property ContainsGenericParameters As Boolean
属性值
如果当前 MethodBase 对象表示的泛型方法包含未赋值的泛型类型参数,则为 true
;否则为 false
。
注解
仅当方法本身的类型参数或任何封闭类型中没有泛型类型定义或开放构造类型时,才能调用泛型方法。 由于类型可能任意复杂,因此很难进行这种递归确定。 为方便起见,为了减少出错的可能性, ContainsGenericParameters 属性提供了一种标准方法来区分可调用的封闭构造方法和不能调用的开放构造方法。
ContainsGenericParameters如果 属性返回 true
,则无法调用 方法。
属性 ContainsGenericParameters 以递归方式搜索类型参数。 例如,它为 Visual Basic) 中打开类型 A<T>
(A(Of T)
的任何方法返回 true
,即使该方法本身不是泛型方法。 将此与 属性的行为 IsGenericMethod 进行对比,该属性为此类方法返回 false
。
同样, ContainsGenericParameters 即使构造函数不能具有自己的类型参数,属性参数也会 true
为打开类型中的任何构造函数返回 。
有关特定于泛型方法的术语的固定条件列表,请参阅 IsGenericMethod 属性。 有关泛型反射中使用的其他术语的固定条件列表,请参阅 Type.IsGenericType 属性。