TypeBuilder 成员

在运行时定义并创建类的新实例。

下表列出了由 TypeBuilder 类型公开的成员。

公共字段

  名称 说明
Public field Static UnspecifiedTypeSize 表示不指定此类型的总大小。

页首

公共属性

  名称 说明
Public property Assembly 已重写。检索包含此类型定义的动态程序集。
Public property AssemblyQualifiedName 已重写。返回由程序集的显示名称限定的此类型的完整名称。
Public property Attributes  获取与 Type 关联的属性。(从 Type 继承。)
Public property BaseType 已重写。检索此类型的基类型。
Public property ContainsGenericParameters  获取一个值,该值指示当前 Type 对象是否具有尚未被特定类型替代的类型参数。(从 Type 继承。)
Public property DeclaringMethod 已重写。获取当前泛型类型参数的声明方法。
Public property DeclaringType 已重写。返回声明此类型的类型。
Public property Static DefaultBinder  获取默认联编程序的引用,该程序实现的内部规则用于选择由 InvokeMember 调用的合适成员。(从 Type 继承。)
Public property FullName 已重写。检索此类型的完整路径。
Public property GenericParameterAttributes 已重写。获取一个值,该值指示当前泛型类型参数的协方差和特殊约束。
Public property GenericParameterPosition 已重写。获取某个类型参数在类型参数列表中的位置,该列表具有声明该参数的泛型类型。
Public property GUID 已重写。检索此类型的 GUID。
Public property HasElementType  获取一个值,通过该值指示当前 Type 是包含还是引用另一类型,即当前 Type 是数组、指针还是通过引用传递。(从 Type 继承。)
Public property IsAbstract  获取一个值,通过该值指示 Type 是否为抽象的并且必须被重写。(从 Type 继承。)
Public property IsAnsiClass  获取一个指示是否为 Type 选择了字符串格式属性 (Attribute) AnsiClass 的值。(从 Type 继承。)
Public property IsArray  获取一个值,通过该值指示 Type 是否为数组。(从 Type 继承。)
Public property IsAutoClass  获取一个值,通过该值指示是否为 Type 选定了字符串格式属性 (Attribute) AutoClass。(从 Type 继承。)
Public property IsAutoLayout  获取一个指示是否为 Type 选择了类布局属性 (Attribute) AutoLayout 的值。(从 Type 继承。)
Public property IsByRef  获取一个值,通过该值指示 Type 是否由引用传递。(从 Type 继承。)
Public property IsClass  获取一个值,通过该值指示 Type 是否是一个类;即,不是值类型或接口。(从 Type 继承。)
Public property IsCOMObject  获取一个值,通过该值指示 Type 是否为 COM 对象。(从 Type 继承。)
Public property IsContextful  获取一个值,通过该值指示 Type 在上下文中是否可以被承载。(从 Type 继承。)
Public property IsEnum  获取一个值,该值指示当前的 Type 是否表示枚举。(从 Type 继承。)
Public property IsExplicitLayout  获取一个值,通过该值指示是否为 Type 选定了类布局属性 (Attribute) ExplicitLayout。(从 Type 继承。)
Public property IsGenericParameter 已重写。获取一个值,该值指示当前类型是否为泛型类型参数。
Public property IsGenericType 已重写。获取一个值,该值指示当前类型是否为泛型类型。
Public property IsGenericTypeDefinition 已重写。获取一个值,该值指示当前 TypeBuilder 是否表示一个泛型类型定义,可以根据该定义构造其他的泛型类型。
Public property IsImport  获取一个值,该值指示 Type 是否应用了 ComImportAttribute 属性,如果应用了该属性,则表示它是从 COM 类型库导入的。(从 Type 继承。)
Public property IsInterface  获取一个值,通过该值指示 Type 是否为接口(即不是类或值类型)。(从 Type 继承。)
Public property IsLayoutSequential  获取一个值,通过该值指示是否为 Type 选定了类布局属性 (Attribute) SequentialLayout。(从 Type 继承。)
Public property IsMarshalByRef  获取一个值,该值指示 Type 是否按引用进行封送。(从 Type 继承。)
Public property IsNested  获取一个指示当前 Type 对象是否表示其定义嵌套在另一个类型的定义之内的类型的值。(从 Type 继承。)
Public property IsNestedAssembly  获取一个值,通过该值指示 Type 是否是嵌套的并且只能在它自己的程序集内可见。(从 Type 继承。)
Public property IsNestedFamANDAssem  获取一个值,通过该值指示 Type 是否是嵌套的并且只对同时属于自己家族和自己程序集的类可见。(从 Type 继承。)
Public property IsNestedFamily  获取一个值,通过该值指示 Type 是否是嵌套的并且只在它自己的家族内可见。(从 Type 继承。)
Public property IsNestedFamORAssem  获取一个值,通过该值指示 Type 是否是嵌套的并且只对属于它自己的家族或它自己的程序集的类可见。(从 Type 继承。)
Public property IsNestedPrivate  获取一个值,通过该值指示 Type 是否是嵌套的并声明为私有。(从 Type 继承。)
Public property IsNestedPublic  获取一个值,通过该值指示类是否是嵌套的并且声明为公共的。(从 Type 继承。)
Public property IsNotPublic  获取一个值,该值指示 Type 是否声明为公共类型。(从 Type 继承。)
Public property IsPointer  获取一个值,通过该值指示 Type 是否为指针。(从 Type 继承。)
Public property IsPrimitive  获取一个值,通过该值指示 Type 是否为基元类型之一。(从 Type 继承。)
Public property IsPublic  获取一个值,该值指示 Type 是否声明为公共类型。(从 Type 继承。)
Public property IsSealed  获取一个值,通过该值指示 Type 是否声明为密封的。(从 Type 继承。)
Public property IsSerializable  获取一个值,通过该值指示 Type 是否为可串行的。(从 Type 继承。)
Public property IsSpecialName  获取一个值,通过该值指示 Type 是否具有需要特殊处理的名称。(从 Type 继承。)
Public property IsUnicodeClass  获取一个值,通过该值指示是否为 Type 选定了字符串格式属性 (Attribute) UnicodeClass。(从 Type 继承。)
Public property IsValueType  获取一个值,通过该值指示 Type 是否为值类型。(从 Type 继承。)
Public property IsVisible  获取一个指示 Type 是否可由程序集之外的代码访问的值。(从 Type 继承。)
Public property MemberType  获取一个指示此成员是类型还是嵌套类型的 MemberTypes 值。(从 Type 继承。)
Public property MetadataToken  获取一个值,该值标识元数据元素。(从 MemberInfo 继承。)
Public property Module 已重写。检索包含此类型定义的动态模块。
Public property Name 已重写。检索此类型的名称。
Public property Namespace 已重写。检索定义此 TypeBuilder 的命名空间。
Public property PackingSize 检索此类型的封装大小。
Public property ReflectedType 已重写。返回用于获取此类型的类型。
Public property Size 检索此类型的总大小。
Public property StructLayoutAttribute  获取一个描述当前类型的布局的 StructLayoutAttribute。(从 Type 继承。)
Public property TypeHandle 已重写。在动态模块中不支持。
Public property TypeInitializer  获取 Type 的初始值设定项。(从 Type 继承。)
Public property TypeToken 返回此类型的类型标记。
Public property UnderlyingSystemType 已重写。返回此 TypeBuilder 的基础系统类型。

页首

公共方法

  名称 说明
Public method AddDeclarativeSecurity 为此类型添加声明性安全。
Public method AddInterfaceImplementation 添加此类型实现的接口。
Public method CreateType 创建类的 Type 对象。定义了类的字段和方法后,调用 CreateType 以加载其 Type 对象。
Public method DefineConstructor 已重载。 向动态类型中添加新的构造函数。
Public method DefineDefaultConstructor 定义默认的构造函数。这里定义的构造函数只调用父类的默认构造函数。
Public method DefineEvent 用给定的名称、属性和事件类型,向类型中添加新事件。
Public method DefineField 已重载。 向动态类型中添加新字段。
Public method DefineGenericParameters 为当前类型定义泛型类型参数,指定参数的个数和名称,并返回一个 GenericTypeParameterBuilder 对象的数组,这些对象可用于设置参数的约束。
Public method DefineInitializedData 在可移植可执行 (PE) 文件的 .sdata 部分定义初始化的数据字段。
Public method DefineMethod 已重载。 向类型中添加方法。
Public method DefineMethodOverride 指定实现给定方法声明的给定方法体。
Public method DefineNestedType 已重载。 定义嵌套类型。
Public method DefinePInvokeMethod 已重载。 定义 PInvoke 方法。
Public method DefineProperty 已重载。 将新属性添加到类型中。
Public method DefineTypeInitializer 为此类型定义初始值设定项。
Public method DefineUninitializedData 在可移植可执行 (PE) 文件的 .sdata 部分定义未初始化的数据字段。
Public method Equals  已重载。 确定当前 Type 的基础系统类型是否与指定 ObjectType 的基础系统类型相同。 (从 Type 继承。)
Public method FindInterfaces  返回表示接口(由当前 Type 所实现或继承)的筛选列表的 Type 对象数组。 (从 Type 继承。)
Public method FindMembers  返回指定成员类型的 MemberInfo 对象的筛选数组。 (从 Type 继承。)
Public method GetArrayRank  获取 Array 中的维数。 (从 Type 继承。)
Public method GetConstructor 已重载。 返回符合指定条件的构造函数。
Public method GetConstructors 已重载。 返回由当前 TypeBuilder 定义的构造函数。
Public method GetCustomAttributes 已重载。 已重写。 返回为此类型定义的自定义属性。
Public method GetDefaultMembers  搜索为设置了 DefaultMemberAttribute 的当前 Type 定义的成员。 (从 Type 继承。)
Public method GetElementType 已重写。 调用此方法始终引发 NotSupportedException
Public method GetEvent 已重载。 返回由当前 TypeBuilder 定义的事件。
Public method GetEvents 已重载。 已重写。 返回由当前 TypeBuilder 定义的事件。
Public method GetField 已重载。 返回由当前 TypeBuilder 定义的字段。
Public method GetFields 已重载。 返回由当前 TypeBuilder 定义的字段。
Public method GetGenericArguments 已重写。 返回一个 Type 对象的数组,这些对象表示泛型类型的类型变量或泛型类型定义的类型参数。
Public method GetGenericParameterConstraints  返回表示当前泛型类型参数上的约束的 Type 对象的数组。 (从 Type 继承。)
Public method GetGenericTypeDefinition 已重写。 返回的 Type 对象表示一个泛型类型定义,可以从该定义中获取当前类型。
Public method GetHashCode  返回此实例的哈希代码。 (从 Type 继承。)
Public method GetInterface 已重载。 返回由当前 TypeBuilder 实现的接口。
Public method GetInterfaceMap 已重写。 返回请求的接口的接口映射。
Public method GetInterfaces 已重写。 返回在此类型及其基类型上实现的所有接口的数组。
Public method GetMember 已重载。 返回由当前 TypeBuilder 定义的成员。
Public method GetMembers 已重载。 返回由当前 TypeBuilder 定义的成员。
Public method GetMethod 已重载。 返回符合指定条件的方法。
Public method GetMethods 已重载。 返回由当前 TypeBuilder 定义的方法。
Public method GetNestedType 已重载。 返回由当前 TypeBuilder 定义的嵌套类型。
Public method GetNestedTypes 已重载。 返回由当前 TypeBuilder 定义的嵌套类型。
Public method GetProperties 已重载。 返回由当前 TypeBuilder 定义的属性。
Public method GetProperty  已重载。 获取当前 Type 的特定属性 (Property)。 (从 Type 继承。)
Public method GetType  已重载。 获取表示指定类型的 Type 对象。 (从 Type 继承。)
Public method Static GetTypeArray  获取指定数组中对象的类型。 (从 Type 继承。)
Public method Static GetTypeCode  获取指定 Type 的基础类型代码。 (从 Type 继承。)
Public method Static GetTypeFromCLSID  已重载。 获取与指定类标识符 (CLSID) 关联的类型。 (从 Type 继承。)
Public method Static GetTypeFromHandle  获取由指定类型句柄引用的类型。 (从 Type 继承。)
Public method Static GetTypeFromProgID  已重载。 获取与指定程序标识符 (ProgID) 关联的类型。 (从 Type 继承。)
Public method Static GetTypeHandle  获取指定对象的 Type 的句柄。 (从 Type 继承。)
Public method InvokeMember 已重载。 调用由当前 TypeBuilder 定义的成员。
Public method IsAssignableFrom 已重写。 确定当前的 Type 的实例是否可以从指定 Type 的实例分配。
Public method IsCreated 返回一个值,该值指示是否已创建当前动态类型。
Public method IsDefined 已重写。 确定是否将自定义属性应用于当前类型。
Public method IsInstanceOfType  确定指定的对象是否是当前 Type 的实例。 (从 Type 继承。)
Public method IsSubclassOf 已重写。 确定此类型是否从指定的类型派生而来。
Public method MakeArrayType 已重载。 已重写。 返回表示当前类型的数组的 Type 对象。
Public method MakeByRefType 已重写。 返回一个 Type 对象,该对象表示作为 ref(在 Visual Basic 中为 ByRef)参数传递的当前类型。
Public method MakeGenericType 已重写。 用一个类型数组的元素取代当前泛型类型定义的类型参数,然后返回结果构造类型。
Public method MakePointerType 已重写。 返回一个 Type 对象,该对象表示指向当前类型的非托管指针的类型。
Public method Static ReferenceEquals  确定指定的 Object 实例是否是相同的实例。 (从 Object 继承。)
Public method Static ReflectionOnlyGetType  获取具有指定名称的 Type,指定是否执行区分大小写的搜索,以及在找不到类型时是否引发异常。该类型只为反射加载,而不为执行加载。 (从 Type 继承。)
Public method SetCustomAttribute 已重载。 设置自定义属性。
Public method SetParent 为当前构造中的类型设置基类型。
Public method ToString 已重写。 返回不包括命名空间的类型名称。

页首

显式接口实现

  名称 说明
Explicit interface implementation Method System.Runtime.InteropServices._TypeBuilder.GetIDsOfNames 将一组名称映射为对应的一组调度标识符。
Explicit interface implementation Method System.Runtime.InteropServices._TypeBuilder.GetTypeInfo 检索对象的类型信息,然后可以使用该信息获取接口的类型信息。
Explicit interface implementation Method System.Runtime.InteropServices._TypeBuilder.GetTypeInfoCount 检索对象提供的类型信息接口的数量(0 或 1)。
Explicit interface implementation Method System.Runtime.InteropServices._TypeBuilder.Invoke 提供对某一对象公开的属性和方法的访问。

页首

请参见

参考

TypeBuilder 类
System.Reflection.Emit 命名空间

其他资源

用反射发出定义类型
如何:定义具有反射发出的泛型类型