C# 泛型方法中反射常用方法使用的:因为公共语言运行库 (CLR) 能够在运行时访问泛型类型信息,所以可以使用反射获取关于泛型类型的信息,方法与用于非泛型类型的方法相同。在 .NET Framework 2.0 中, Type 类增添了几个新成员以启用泛型类型的运行时信息。System.Reflection.Emit 命名空间还包含支持泛型的新成员。有关泛型反射中使用的术语的固定条件列表,请参见IsGenericType 属性备注。
C# 泛型方法中反射常用方法之System.Type成员
◆IsGenericType
如果类型为泛型,则返回 true。
◆GetGenericArguments
返回 Type 对象数组,这些对象表示为构造类型提供的类型变量,或泛型类型定义的类型参数。
◆GetGenericTypeDefinition
返回当前构造类型的基础泛型类型定义。
◆GetGenericParameterConstraints
返回表示当前泛型类型参数约束的 Type 对象的数组。
◆ContainsGenericParameters
如果类型或其任意封闭类型或方法包含没有被提供特定类型的类型参数,则返回 true。
◆GenericParameterAttributes
获取 GenericParameterAttributes 标志的组合,这些标志描述当前泛型类型参数的特殊约束。
◆GenericParameterPosition
对于表示类型参数的 Type 对象,获取类型参数在声明该类型参数的泛型类型定义或泛型方法定义的类型参数列表中的位置。
◆IsGenericParameter
获取一个值,该值指示当前 Type 是表示泛型类型定义的类型参数,还是泛型方法定义的类型参数。
◆IsGenericTypeDefinition
获取一个值,该值指示当前 Type 是否表示可以用来构造其他泛型类型的泛型类型定义。如果类型表示泛型类型的定义,则返回 true。
◆DeclaringMethod
返回定义当前泛型类型参数的泛型方法;如果类型参数不是由泛型方法定义的,则返回空值。
◆MakeGenericType
用类型数组的元素替代当前泛型类型定义的类型参数,并返回表示结果构造类型的 Type 对象。
此外, MethodInfo 类中还添加了新成员以启用泛型方法的运行时信息。有关C# 泛型方法反射中使用的术语的固定条件列表,请参见 IsGenericMethod 属性备注。
C# 泛型方法中反射常用方法之System.Reflection.MemberInfo成员
◆IsGenericMethod
如果方法为泛型,则返回 true。
◆GetGenericArguments
返回 Type 对象数组,这些对象表示构造泛型方法的类型变量,或泛型方法定义的类型参数。
◆GetGenericMethodDefinition
返回当前构造方法的基础泛型方法定义。
◆ContainsGenericParameters
如果方法或其任意封闭类型包含没有被提供特定类型的任何类型参数,则返回 true。
◆IsGenericMethodDefinition
如果当前 MethodInfo 表示泛型方法的定义,则返回 true。
◆MakeGenericMethod
用类型数组的元素替代当前泛型方法定义的类型参数,并返回表示结果构造方法的 MethodInfo 对象。
C# 泛型方法中反射常用方法就向你介绍到这里,希望对你了解和学习C# 泛型方法中反射常用方法有所帮助。
【编辑推荐】