更新:2007 年 11 月
因为公共语言运行时 (CLR) 能够在运行时访问泛型类型信息,所以可以使用反射获取关于泛型类型的信息,方法与用于非泛型类型的方法相同。有关更多信息,请参见 运行时中的泛型(C# 编程指南)。
在 .NET Framework 2.0 中,有几个新成员添加到了
有关泛型反射中使用的术语的固定条件列表,请参见
System.Type 成员名称 | 说明 |
---|---|
如果类型为泛型,则返回 true。 | |
返回 Type 对象数组,这些对象表示为构造类型提供的类型变量,或泛型类型定义的类型参数。 | |
返回当前构造类型的基础泛型类型定义。 | |
返回表示当前泛型类型参数约束的 Type 对象的数组。 | |
如果类型或其任意封闭类型或方法包含没有被提供特定类型的类型参数,则返回 true。 | |
获取 GenericParameterAttributes 标志的组合,这些标志描述当前泛型类型参数的特殊约束。 | |
对于表示类型参数的 Type 对象,获取类型参数在声明该类型参数的泛型类型定义或泛型方法定义的类型参数列表中的位置。 | |
获取一个值,该值指示当前 Type 是表示泛型类型定义的类型参数,还是泛型方法定义的类型参数。 | |
获取一个值,该值指示当前 | |
返回定义当前泛型类型参数的泛型方法;如果类型参数不是由泛型方法定义的,则返回空值。 | |
用类型数组的元素替代当前泛型类型定义的类型参数,并返回表示结果构造类型的 |
此外,
System.Reflection.MemberInfo 成员名称 | 说明 |
---|---|
如果方法为泛型,则返回 true。 | |
返回 Type 对象数组,这些对象表示构造泛型方法的类型变量,或泛型方法定义的类型参数。 | |
返回当前构造方法的基础泛型方法定义。 | |
如果方法或其任意封闭类型包含没有被提供特定类型的任何类型参数,则返回 true。 | |
如果当前 | |
用类型数组的元素替代当前泛型方法定义的类型参数,并返回表示结果构造方法的 |