Type 类

定义

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

public ref class Type abstract
public ref class Type abstract : System::Reflection::MemberInfo, System::Reflection::IReflect
public ref class Type abstract : System::Reflection::MemberInfo, System::Reflection::IReflect, System::Runtime::InteropServices::_Type
public abstract class Type
public abstract class Type : System.Reflection.MemberInfo, System.Reflection.IReflect
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
public abstract class Type : System.Reflection.MemberInfo, System.Reflection.IReflect, System.Runtime.InteropServices._Type
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Type : System.Reflection.MemberInfo, System.Reflection.IReflect, System.Runtime.InteropServices._Type
type Type = class
type Type = class
    inherit MemberInfo
    interface IReflect
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
type Type = class
    inherit MemberInfo
    interface _Type
    interface IReflect
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Type = class
    inherit MemberInfo
    interface _Type
    interface IReflect
Public MustInherit Class Type
Public MustInherit Class Type
Inherits MemberInfo
Implements IReflect
Public MustInherit Class Type
Inherits MemberInfo
Implements _Type, IReflect
继承
Type
继承
派生
属性
实现

示例

以下示例演示 的 Type一些代表性功能。 Visual Basic) GetType 中的 C# typeof 运算符 (运算符用于获取Type表示 String的对象。 从此 Type 对象中 GetMethod ,方法用于获取表示 MethodInfo 采用起始位置和长度的 String.Substring 重载的 。

为了标识重载签名,该代码示例创建一个临时数组,其中包含两 Type 个对象,表示 int Visual Basic) 中的 (Integer

代码示例使用 MethodInfo 调用 Substring 字符串“Hello, World!”上的 方法,并显示结果。

#using <System.dll>

using namespace System;
using namespace System::Reflection;

void main()
{
    // Get a Type object representing the System.String type.
    Type^ t = String::typeid;

    MethodInfo^ substr = t->GetMethod("Substring", 
        gcnew array<Type^> { int::typeid, int::typeid });

    Object^ result = 
        substr->Invoke("Hello, World!", gcnew array<Object^> { 7, 5 });
    Console::WriteLine("{0} returned \"{1}\".", substr, result);
}

/* This code example produces the following output:

System.String Substring(Int32, Int32) returned "World".
 */
using System;
using System.Reflection;

class Example
{
    static void Main()
    {
        Type t = typeof(String);

        MethodInfo substr = t.GetMethod("Substring", 
            new Type[] { typeof(int), typeof(int) });

        Object result = 
            substr.Invoke("Hello, World!", new Object[] { 7, 5 });
        Console.WriteLine("{0} returned \"{1}\".", substr, result);
    }
}

/* This code example produces the following output:

System.String Substring(Int32, Int32) returned "World".
 */
open System

let t = typeof<String>

let substr = t.GetMethod("Substring", [| typeof<int>; typeof<int> |])

let result = substr.Invoke("Hello, World!", [| 7; 5 |])
printfn $"{substr} returned \"{result}\"."

(* This code example produces the following output:

System.String Substring(Int32, Int32) returned "World".
 *)
Imports System.Reflection

Module Example
    
    Sub Main() 

        Dim t As Type = GetType(String)
        
        Dim substr As MethodInfo = t.GetMethod("Substring", _
            New Type() { GetType(Integer), GetType(Integer) })
        
        Dim result As Object = _ 
            substr.Invoke("Hello, World!", New Object() { 7, 5 })
        Console.WriteLine("{0} returned ""{1}"".", substr, result)
    
    End Sub 
End Module

' This code example produces the following output:
'
'System.String Substring(Int32, Int32) returned "World".

注解

有关此 API 的详细信息,请参阅 Type 的补充 API 说明

实施者说明

Type继承时,必须重写以下成员:

构造函数

Type()

初始化 Type 类的新实例。

字段

Delimiter

分隔 Type 的命名空间中的名称。 此字段为只读。

EmptyTypes

表示 Type 类型的空数组。 此字段为只读。

FilterAttribute

表示用在特性上的成员筛选器。 此字段为只读。

FilterName

表示用于名称的区分大小写的成员筛选器。 此字段为只读。

FilterNameIgnoreCase

表示用于名称的不区分大小写的成员筛选器。 此字段为只读。

Missing

表示 Type 信息中的缺少值。 此字段为只读。

属性

Assembly

获取在其中声明该类型的 Assembly。 对于泛型类型,则获取在其中定义该泛型类型的 Assembly

AssemblyQualifiedName

获取类型的程序集限定名,其中包括从中加载 Type 的程序集的名称。

Attributes

获取与 Type 关联的属性。

BaseType

获取当前 Type 直接从中继承的类型。

ContainsGenericParameters

获取一个值,该值指示当前 Type 对象是否具有尚未被特定类型替代的类型参数。

CustomAttributes

获取包含此成员自定义属性的集合。

(继承自 MemberInfo)
DeclaringMethod

获取一个表示声明方法的 MethodBase(如果当前 Type 表示泛型方法的一个类型参数)。

DeclaringType

获取用来声明当前的嵌套类型或泛型类型参数的类型。

DefaultBinder

获取默认联编程序的引用,该程序实现的内部规则用于选择由 InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) 调用的合适成员。

FullName

获取该类型的完全限定名称,包括其命名空间,但不包括程序集。

GenericParameterAttributes

获取描述当前泛型类型参数的协变和特殊约束的 GenericParameterAttributes 标志。

GenericParameterPosition

Type 对象表示泛型类型或泛型方法的类型参数时,获取类型参数在声明它的泛型类型或方法的类型参数列表中的位置。

GenericTypeArguments

获取此类型泛型类型参数的数组。

GUID

获取与 Type关联的 GUID。

HasElementType

获取一个值,通过该值指示当前 Type 是包含还是引用另一类型,即当前 Type 是数组、指针还是通过引用传递。

IsAbstract

获取一个值,通过该值指示 Type 是否为抽象的并且必须被重写。

IsAnsiClass

获取一个值,该值指示是否为 AnsiClass 选择了字符串格式属性 Type

IsArray

获取一个值,该值指示类型是否为数组。

IsAutoClass

获取一个值,该值指示是否为 AutoClass 选择了字符串格式属性 Type

IsAutoLayout

获取指示当前类型的字段是否由公共语言运行时自动放置的值。

IsByRef

获取一个值,该值指示 Type 是否由引用传递。

IsByRefLike

获取一个值,该值指示类型是否是与 byref 类似的结构。

IsClass

获取一个值,通过该值指示 Type 是否是一个类或委托;即,不是值类型或接口。

IsCollectible

获取一个值,该值指示此 MemberInfo 对象是否是包含在可回收的 AssemblyLoadContext 中的程序集的一部分。

(继承自 MemberInfo)
IsCOMObject

获取一个值,通过该值指示 Type 是否为 COM 对象。

IsConstructedGenericType

获取指示此对象是否表示构造的泛型类型的值。 你可以创建构造型泛型类型的实例。

IsContextful

获取一个值,通过该值指示 Type 在上下文中是否可以被承载。

IsEnum

获取一个值,该值指示当前的 Type 是否表示枚举。

IsExplicitLayout

获取指示当前类型的字段是否放置在显式指定的偏移量处的值。

IsFunctionPointer

获取一个值,该值指示当前 Type 是否为函数指针。

IsGenericMethodParameter

获取一个值,该值指示当前 Type 是否表示泛型方法定义中的类型参数。

IsGenericParameter

获取一个值,该值指示当前 Type 是否表示泛型类型或方法的定义中的类型参数。

IsGenericType

获取一个值,该值指示当前类型是否是泛型类型。

IsGenericTypeDefinition

获取一个值,该值指示当前 Type 是否表示可以用来构造其他泛型类型的泛型类型定义。

IsGenericTypeParameter

获取一个值,该值指示当前 Type 是否表示泛型类型定义中的类型参数。

IsImport

获取一个值,该值指示 Type 是否应用了 ComImportAttribute 属性,如果应用了该属性,则表示它是从 COM 类型库导入的。

IsInterface

获取一个值,通过该值指示 Type 是否是一个接口;即,不是类或值类型。

IsLayoutSequential

获取指示当前类型的字段是否按顺序(定义顺序或发送到元数据的顺序)放置的值。

IsMarshalByRef

获取一个值,该值指示 Type 是否按引用进行封送。

IsNested

获取一个指示当前 Type 对象是否表示其定义嵌套在另一个类型的定义之内的类型的值。

IsNestedAssembly

获取一个值,通过该值指示 Type 是否是嵌套的并且只能在它自己的程序集内可见。

IsNestedFamANDAssem

获取一个值,通过该值指示 Type 是否是嵌套的并且只对同时属于自己家族和自己程序集的类可见。

IsNestedFamily

获取一个值,通过该值指示 Type 是否是嵌套的并且只能在它自己的家族内可见。

IsNestedFamORAssem

获取一个值,通过该值指示 Type 是否是嵌套的并且只对属于它自己的家族或属于它自己的程序集的类可见。

IsNestedPrivate

获取一个值,通过该值指示 Type 是否是嵌套的并声明为私有。

IsNestedPublic

获取一个值,通过该值指示类是否是嵌套的并且声明为公共的。

IsNotPublic

获取一个值,该值指示 Type 是否声明为公共类型。

IsPointer

获取一个值,通过该值指示 Type 是否为指针。

IsPrimitive

获取一个值,通过该值指示 Type 是否为基元类型之一。

IsPublic

获取一个值,该值指示 Type 是否声明为公共类型。

IsSealed

获取一个值,该值指示 Type 是否声明为密封的。

IsSecurityCritical

获取一个值,该值指示当前的类型在当前信任级别上是安全关键的还是安全可靠关键的,并因此可以执行关键操作。

IsSecuritySafeCritical

获取一个值,该值指示当前类型在当前信任级别上是否是安全可靠关键的;即它是否可以执行关键操作并可以由透明代码访问。

IsSecurityTransparent

获取一个值,该值指示当前类型在当前信任级别上是否是透明的而无法执行关键操作。

IsSerializable
已过时.

获取一个值, Type 该值指示 是否可序列化二进制。

IsSignatureType

获取一个值,该值指示类型是否是签名类型。

IsSpecialName

获取一个值,该值指示该类型是否具有需要特殊处理的名称。

IsSZArray

获取一个值,该值指示类型是否是仅可表示下限为零的一维数组的数组类型。

IsTypeDefinition

获取一个值,该值指示类型是否是类型定义。

IsUnicodeClass

获取一个值,该值指示是否为 UnicodeClass 选择了字符串格式属性 Type

IsUnmanagedFunctionPointer

获取一个值,该值指示当前 Type 是否为非托管函数指针。

IsValueType

获取一个值,通过该值指示 Type 是否为值类型。

IsVariableBoundArray

获取一个值,该值指示类型是否是可表示多维数组或具有任意下限的数组的数组类型。

IsVisible

获取一个指示 Type 是否可由程序集之外的代码访问的值。

MemberType

获取一个指示此成员是类型还是嵌套类型的 MemberTypes 值。

MetadataToken

获取一个值,该值标识元数据元素。

(继承自 MemberInfo)
Module

获取在其中定义当前 Type 的模块 (DLL)。

Name

在派生类中覆盖时,获取当前类型的名称。

Name

获取当前成员的名称。

(继承自 MemberInfo)
Namespace

获取 Type 的命名空间。

ReflectedType

获取用于获取该成员的类对象。

StructLayoutAttribute

获取一个描述当前类型的布局的 StructLayoutAttribute

TypeHandle

获取当前 Type 的句柄。

TypeInitializer

获取该类型的初始值设定项。

UnderlyingSystemType

指示表示该类型的公共语言运行时提供的类型。

方法

Equals(Object)

确定当前 Type 的基础系统类型是否与指定 Object 的基础系统类型相同。

Equals(Type)

确定当前 Type 的基础系统类型是否与指定 Type 的基础系统类型相同。

FindInterfaces(TypeFilter, Object)

返回表示接口(由当前 Type 所实现或继承)的筛选列表的 Type 对象数组。

FindMembers(MemberTypes, BindingFlags, MemberFilter, Object)

返回指定成员类型的 MemberInfo 对象的筛选数组。

GetArrayRank()

获取数组中的维数。

GetAttributeFlagsImpl()

在派生类中重写时,实现 Attributes 属性,并获取枚举值的按位组合(它指示与 Type 关联的特性)。

GetConstructor(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

用指定绑定约束和指定调用约定,搜索其参数与指定参数类型及修饰符匹配的构造函数。

GetConstructor(BindingFlags, Binder, Type[], ParameterModifier[])

使用指定绑定约束搜索其参数与指定自变量类型和修饰符匹配的构造函数。

GetConstructor(BindingFlags, Type[])

使用指定的绑定约束搜索其参数与指定参数类型匹配的构造函数。

GetConstructor(Type[])

搜索其参数与指定数组中的类型匹配的公共实例构造函数。

GetConstructorImpl(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

当在派生类中重写时,使用指定的绑定约束和指定的调用约定搜索其参数与指定的自变量类型和修饰符匹配的构造函数。

GetConstructors()

返回为当前 Type 定义的所有公共构造函数。

GetConstructors(BindingFlags)

当在派生类中重写时,使用指定 Type 搜索为当前 BindingFlags 定义的构造函数。

GetCustomAttributes(Boolean)

在派生类中重写时,返回应用于此成员的所有自定义属性的数组。

(继承自 MemberInfo)
GetCustomAttributes(Type, Boolean)

在派生类中重写时,返回应用于此成员并由 Type 标识的自定义属性的数组。

(继承自 MemberInfo)
GetCustomAttributesData()

返回 CustomAttributeData 对象列表,这些对象表示已应用到目标成员的特性相关数据。

(继承自 MemberInfo)
GetDefaultMembers()

搜索为设置了 Type 的当前 DefaultMemberAttribute 定义的成员。

GetElementType()

当在派生类中重写时,返回当前数组、指针或引用类型包含的或引用的对象的 Type

GetEnumName(Object)

返回当前枚举类型中具有指定值的常数的名称。

GetEnumNames()

返回当前枚举类型中各个成员的名称。

GetEnumUnderlyingType()

返回当前枚举类型的基础类型。

GetEnumValues()

返回当前枚举类型中各个常数的值组成的数组。

GetEnumValuesAsUnderlyingType()

检索此枚举类型的基础类型常量的值数组。

GetEvent(String)

返回表示指定的公共事件的 EventInfo 对象。

GetEvent(String, BindingFlags)

当在派生类中重写时,使用指定绑定约束,返回表示指定事件的 EventInfo 对象。

GetEvents()

返回由当前 Type 声明或继承的所有公共事件。

GetEvents(BindingFlags)

当在派生类中重写时,使用指定绑定约束,搜索由当前 Type 声明或继承的事件。

GetField(String)

搜索具有指定名称的公共字段。

GetField(String, BindingFlags)

使用指定绑定约束搜索指定字段。

GetFields()

返回当前 Type 的所有公共字段。

GetFields(BindingFlags)

当在派生类中重写时,使用指定绑定约束,搜索为当前 Type 定义的字段。

GetFunctionPointerCallingConventions()

在派生类中重写时,返回当前函数指针 Type的调用约定。

GetFunctionPointerParameterTypes()

在派生类中重写时,返回当前函数指针 Type的参数类型。

GetFunctionPointerReturnType()

在派生类中重写时,返回当前函数指针 Type的返回类型。

GetGenericArguments()

返回表示封闭式泛型类型的类型参数或泛型类型定义的类型参数的 Type 对象的数组。

GetGenericParameterConstraints()

返回表示当前泛型类型参数约束的 Type 对象的数组。

GetGenericTypeDefinition()

返回一个表示可用于构造当前泛型类型的泛型类型定义的 Type 对象。

GetHashCode()

返回此实例的哈希代码。

GetInterface(String)

搜索具有指定名称的接口。

GetInterface(String, Boolean)

当在派生类中重写时,搜索指定的接口,指定是否要对接口名称执行不区分大小写的搜索。

GetInterfaceMap(Type)

返回指定接口类型的接口映射。

GetInterfaces()

当在派生类中重写时,获取由当前 Type 实现或继承的所有接口。

GetMember(String)

搜索具有指定名称的公共成员。

GetMember(String, BindingFlags)

使用指定绑定约束搜索指定成员。

GetMember(String, MemberTypes, BindingFlags)

使用指定绑定约束搜索指定成员类型的指定成员。

GetMembers()

返回为当前 Type 的所有公共成员。

GetMembers(BindingFlags)

当在派生类中重写时,使用指定绑定约束,搜索为当前 Type 定义的成员。

GetMemberWithSameMetadataDefinitionAs(MemberInfo)

MemberInfo在与指定的 MemberInfo匹配的当前 Type 上搜索 。

GetMethod(String)

搜索具有指定名称的公共方法。

GetMethod(String, BindingFlags)

使用指定绑定约束搜索指定方法。

GetMethod(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

用指定的绑定约束和指定的调用约定,搜索参数与指定的参数类型及修饰符相匹配的指定方法。

GetMethod(String, BindingFlags, Binder, Type[], ParameterModifier[])

使用指定绑定约束,搜索其参数与指定自变量类型及修饰符匹配的指定方法。

GetMethod(String, BindingFlags, Type[])

使用指定的绑定约束搜索其参数与指定参数类型匹配的指定方法。

GetMethod(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

使用指定的绑定约束和指定的调用约定搜索其参数与指定泛型参数计数、参数类型及修饰符匹配的指定方法。

GetMethod(String, Int32, BindingFlags, Binder, Type[], ParameterModifier[])

使用指定绑定约束,搜索其参数与指定泛型参数计数、参数类型及修饰符匹配的指定方法。

GetMethod(String, Int32, BindingFlags, Type[])

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetMethod(String, Int32, Type[])

搜索其参数与指定泛型参数计数及参数类型匹配的指定公共方法。

GetMethod(String, Int32, Type[], ParameterModifier[])

搜索其参数与指定泛型参数计数、参数类型及修饰符匹配的指定公共方法。

GetMethod(String, Type[])

搜索其参数与指定参数类型匹配的指定公共方法。

GetMethod(String, Type[], ParameterModifier[])

搜索其参数与指定参数类型及修饰符匹配的指定公共方法。

GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

当在派生类中重写时,使用指定的绑定约束和指定的调用约定搜索其参数与指定的自变量类型和修饰符匹配的指定方法。

GetMethodImpl(String, Int32, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

当在派生类中重写时,使用指定的绑定约束和指定的调用约定搜索其参数与指定泛型参数计数、参数类型和修饰符匹配的指定方法。

GetMethods()

返回为当前 Type 的所有公共方法。

GetMethods(BindingFlags)

当在派生类中重写时,使用指定绑定约束,搜索为当前 Type 定义的方法。

GetNestedType(String)

搜索具有指定名称的公共嵌套类型。

GetNestedType(String, BindingFlags)

当在派生类中重写时,使用指定绑定约束搜索指定嵌套类型。

GetNestedTypes()

返回嵌套在当前的 Type 中的公共类型。

GetNestedTypes(BindingFlags)

当在派生类中重写时,使用指定绑定约束搜索嵌套在当前 Type 中的类型。

GetOptionalCustomModifiers()

在派生类中重写时,返回当前 Type的可选自定义修饰符。

GetProperties()

返回为当前 Type 的所有公共属性。

GetProperties(BindingFlags)

当在派生类中重写时,使用指定绑定约束,搜索当前 Type 的属性。

GetProperty(String)

搜索具有指定名称的公共属性。

GetProperty(String, BindingFlags)

使用指定的绑定约束搜索指定属性。

GetProperty(String, BindingFlags, Binder, Type, Type[], ParameterModifier[])

使用指定的绑定约束,搜索参数与指定的自变量类型及修饰符匹配的指定属性。

GetProperty(String, Type)

搜索具有指定名称和返回类型的公共属性。

GetProperty(String, Type, Type[])

搜索其参数与指定自变量类型匹配的指定公共属性。

GetProperty(String, Type, Type[], ParameterModifier[])

搜索其参数与指定自变量类型及修饰符匹配的指定公共属性。

GetProperty(String, Type[])

搜索其参数与指定自变量类型匹配的指定公共属性。

GetPropertyImpl(String, BindingFlags, Binder, Type, Type[], ParameterModifier[])

当在派生类中重写时,使用指定的绑定约束搜索其参数与指定的参数类型和修饰符匹配的指定属性。

GetRequiredCustomModifiers()

在派生类中重写时,返回当前 Type所需的自定义修饰符。

GetType()

获取当前 Type

GetType()

获取当前实例的 Type

(继承自 Object)
GetType(String)

获取具有指定名称的 Type,执行区分大小写的搜索。

GetType(String, Boolean)

获取具有指定名称的 Type,指定是否执行区分大小写的搜索,以及在找不到类型时是否引发异常。

GetType(String, Boolean, Boolean)

获取具有指定名称的 Type,指定是否执行区分大小写的搜索,以及在找不到类型时是否引发异常。

GetType(String, Func<AssemblyName,Assembly>, Func<Assembly,String,Boolean,Type>)

获取具有指定名称的类型,(可选)提供自定义方法以解析程序集和该类型。

GetType(String, Func<AssemblyName,Assembly>, Func<Assembly,String,Boolean,Type>, Boolean)

获取具有指定名称的类型,指定在找不到该类型时是否引发异常,(可选)提供自定义方法以解析程序集和该类型。

GetType(String, Func<AssemblyName,Assembly>, Func<Assembly,String,Boolean,Type>, Boolean, Boolean)

获取具有指定名称的类型,指定是否执行区分大小写的搜索,在找不到类型时是否引发异常,(可选)提供自定义方法以解析程序集和该类型。

GetTypeArray(Object[])

获取指定数组中对象的类型。

GetTypeCode(Type)

获取指定 Type 的基础类型代码。

GetTypeCodeImpl()

返回此 Type 实例的基础类型代码。

GetTypeFromCLSID(Guid)

获取与指定类标识符 (CLSID) 关联的类型。

GetTypeFromCLSID(Guid, Boolean)

获取与指定类标识符 (CLSID) 关联的类型,指定在加载该类型时如果发生错误是否引发异常。

GetTypeFromCLSID(Guid, String)

从指定服务器获取与指定类标识符 (CLSID) 关联的类型。

GetTypeFromCLSID(Guid, String, Boolean)

从指定服务器获取与指定类标识符 (CLSID) 关联的类型,指定在加载该类型时如果发生错误是否引发异常。

GetTypeFromHandle(RuntimeTypeHandle)

获取由指定类型句柄引用的类型。

GetTypeFromProgID(String)

获取与指定程序标识符 (ProgID) 关联的类型,如果在加载 Type 时遇到错误,则返回空值。

GetTypeFromProgID(String, Boolean)

获取与指定程序标识符 (ProgID) 关联的类型,指定如果在加载该类型时发生错误是否引发异常。

GetTypeFromProgID(String, String)

从指定服务器获取与指定程序标识符 (progID) 关联的类型,如果在加载该类型时遇到错误则返回空值。

GetTypeFromProgID(String, String, Boolean)

从指定服务器获取与指定程序标识符 (progID) 关联的类型,指定如果在加载该类型时发生错误是否引发异常。

GetTypeHandle(Object)

获取指定对象的 Type 的句柄。

HasElementTypeImpl()

当在派生类中重写时,实现 HasElementType 属性,确定当前 Type 是否包含另一类型或对其引用;即,当前 Type 是否是数组、指针或由引用传递。

HasSameMetadataDefinitionAs(MemberInfo)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

(继承自 MemberInfo)
InvokeMember(String, BindingFlags, Binder, Object, Object[])

使用指定的绑定约束并匹配指定的参数列表,调用指定成员。

InvokeMember(String, BindingFlags, Binder, Object, Object[], CultureInfo)

使用指定的绑定约束和匹配的指定参数列表及区域性来调用指定成员。

InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[])

当在派生类中重写时,使用指定的绑定约束并匹配指定的参数列表、修饰符和区域性,调用指定成员。

IsArrayImpl()

在派生类中重写时,实现 IsArray 属性并确定 Type 是否为数组。

IsAssignableFrom(Type)

确定指定类型 c 的实例是否能分配给当前类型的变量。

IsAssignableTo(Type)

确定当前类型是否可分配给指定 targetType 的变量。

IsByRefImpl()

在派生类中重写时,实现 IsByRef 属性并确定Type 是否通过引用传递。

IsCOMObjectImpl()

当在派生类中重写时,实现 IsCOMObject 属性并确定 Type 是否为 COM 对象。

IsContextfulImpl()

实现 IsContextful 属性并确定 Type 在上下文中是否可以被承载。

IsDefined(Type, Boolean)

在派生类中重写时,指示是否将指定类型或其派生类型的一个或多个特性应用于此成员。

(继承自 MemberInfo)
IsEnumDefined(Object)

返回一个值,该值指示当前的枚举类型中是否存在指定的值。

IsEquivalentTo(Type)

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

IsInstanceOfType(Object)

确定指定的对象是否是当前 Type 的实例。

IsMarshalByRefImpl()

实现 IsMarshalByRef 属性并确定 Type 是否按引用来进行封送。

IsPointerImpl()

在派生类中重写时,实现 IsPointer 属性并确定 Type 是否为指针。

IsPrimitiveImpl()

在派生类中重写时,实现 IsPrimitive 属性并确定 Type 是否为基元类型之一。

IsSubclassOf(Type)

确定当前 Type 是否派生自指定的 Type

IsValueTypeImpl()

实现 IsValueType 属性并确定 Type 是否是值类型;即,它不是值类或接口。

MakeArrayType()

返回 Type 对象,该对象表示当前类型的一维数组(下限为零)。

MakeArrayType(Int32)

返回 Type 对象,该对象表示一个具有指定维数的当前类型的数组。

MakeByRefType()

返回表示作为 Type 参数(在 Visual Basic 中为 ref 参数)传递时的当前类型的 ByRef 对象。

MakeGenericMethodParameter(Int32)

返回一个签名类型对象,该对象可以传递到 Type[] 方法的 GetMethod 数组参数中以表示泛型参数引用。

MakeGenericSignatureType(Type, Type[])

创建一个泛型签名类型,该类型允许第三方重新实现反射,从而完全支持在查询类型成员时使用签名类型。

MakeGenericType(Type[])

替代由当前泛型类型定义的类型参数组成的类型数组的元素,并返回表示结果构造类型的 Type 对象。

MakePointerType()

返回表示指向当前类型的指针的 Type 对象。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ReflectionOnlyGetType(String, Boolean, Boolean)
已过时.

获取具有指定名称的 Type,指定是否执行区分大小写的搜索,以及在找不到类型时是否引发异常。 该类型只为反射加载,而不为执行加载。

ToString()

返回表示当前 String 的名称的 Type

运算符

Equality(Type, Type)

指示两个 Type 对象是否相等。

Inequality(Type, Type)

指示两个 Type 对象是否不相等。

显式接口实现

_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

将一组名称映射为对应的一组调度标识符。

(继承自 MemberInfo)
_MemberInfo.GetType()

获取一个表示 MemberInfo 类的 Type 对象。

(继承自 MemberInfo)
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

检索对象的类型信息,然后可以使用该信息获取接口的类型信息。

(继承自 MemberInfo)
_MemberInfo.GetTypeInfoCount(UInt32)

检索对象提供的类型信息接口的数量(0 或 1)。

(继承自 MemberInfo)
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

提供对某一对象公开的属性和方法的访问。

(继承自 MemberInfo)
_Type.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

将一组名称映射为对应的一组调度标识符。

_Type.GetTypeInfo(UInt32, UInt32, IntPtr)

检索对象的类型信息,然后可以使用该信息获取接口的类型信息。

_Type.GetTypeInfoCount(UInt32)

检索对象提供的类型信息接口的数量(0 或 1)。

_Type.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

提供对某一对象公开的属性和方法的访问。

扩展方法

GetCustomAttribute(MemberInfo, Type)

检索应用于指定成员的指定类型的自定义特性。

GetCustomAttribute(MemberInfo, Type, Boolean)

检索应用于指定成员的指定类型的自定义特性,并可选择检查该成员的上级。

GetCustomAttribute<T>(MemberInfo)

检索应用于指定成员的指定类型的自定义特性。

GetCustomAttribute<T>(MemberInfo, Boolean)

检索应用于指定成员的指定类型的自定义特性,并可选择检查该成员的上级。

GetCustomAttributes(MemberInfo)

检索应用于指定成员的自定义特性集合。

GetCustomAttributes(MemberInfo, Boolean)

检索应用于指定成员的自定义特性集合,并可选择检查该成员的上级。

GetCustomAttributes(MemberInfo, Type)

检索应用于指定成员的指定类型的自定义特性集合。

GetCustomAttributes(MemberInfo, Type, Boolean)

检索应用于指定成员的指定类型的自定义特性集合,并可选择检查该成员的上级。

GetCustomAttributes<T>(MemberInfo)

检索应用于指定成员的指定类型的自定义特性集合。

GetCustomAttributes<T>(MemberInfo, Boolean)

检索应用于指定成员的指定类型的自定义特性集合,并可选择检查该成员的上级。

IsDefined(MemberInfo, Type)

确定是否将指定类型的任何自定义属性应用于指定的成员。

IsDefined(MemberInfo, Type, Boolean)

指示一个指定类型的自定义特性是否应用于一个指定的数字,并选择性地应用于其的上级。

GetTypeInfo(Type)

返回指定类型的 TypeInfo 表示形式。

GetMetadataToken(MemberInfo)

获取给定成员的元数据令牌(如果可用)。

HasMetadataToken(MemberInfo)

返回表示元数据令牌是否可用于指定的成员的值。

GetRuntimeEvent(Type, String)

检索一个表示指定事件的对象。

GetRuntimeEvents(Type)

检索表示指定类型定义的所有事件的集合。

GetRuntimeField(Type, String)

检索表示指定字段的对象。

GetRuntimeFields(Type)

检索表示指定类型定义的所有字段的集合。

GetRuntimeMethod(Type, String, Type[])

检索表示指定方法的对象。

GetRuntimeMethods(Type)

检索表示指定类型定义的所有方法的集合。

GetRuntimeProperties(Type)

检索表示指定类型定义的所有属性的集合。

GetRuntimeProperty(Type, String)

检索表示指定属性的对象。

GetConstructor(Type, Type[])

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetConstructors(Type)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetConstructors(Type, BindingFlags)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetFields(Type, BindingFlags)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetGenericArguments(Type)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetInterfaces(Type)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetMember(Type, String)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetMember(Type, String, BindingFlags)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetMembers(Type)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetMethods(Type)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetNestedType(Type, String, BindingFlags)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetProperties(Type)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetProperties(Type, BindingFlags)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetProperty(Type, String, BindingFlags)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetProperty(Type, String, Type)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

GetProperty(Type, String, Type, Type[])

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

IsAssignableFrom(Type, Type)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

IsInstanceOfType(Type, Object)

表示类型声明:类类型、接口类型、数组类型、值类型、枚举类型、类型参数、泛型类型定义,以及开放或封闭构造的泛型类型。

适用于

线程安全性

此类型是线程安全的。

另请参阅