TypeBuilder.DefineField Метод

Определение

Добавляет новое поле к динамическому типу.Adds a new field to the dynamic type.

Перегрузки

DefineField(String, Type, FieldAttributes)

Добавляет новое поле в тип с заданным именем, атрибутами и типом поля.Adds a new field to the type, with the given name, attributes, and field type.

DefineField(String, Type, Type[], Type[], FieldAttributes)

Добавляет новое поле в тип с заданным именем, атрибутами, типом поля и настраиваемыми модификаторами.Adds a new field to the type, with the given name, attributes, field type, and custom modifiers.

DefineField(String, Type, FieldAttributes)

Добавляет новое поле в тип с заданным именем, атрибутами и типом поля.Adds a new field to the type, with the given name, attributes, and field type.

public:
 System::Reflection::Emit::FieldBuilder ^ DefineField(System::String ^ fieldName, Type ^ type, System::Reflection::FieldAttributes attributes);
public System.Reflection.Emit.FieldBuilder DefineField (string fieldName, Type type, System.Reflection.FieldAttributes attributes);
member this.DefineField : string * Type * System.Reflection.FieldAttributes -> System.Reflection.Emit.FieldBuilder

Параметры

fieldName
String

Имя поля.The name of the field. Параметр fieldName не может содержать внедренные значения NULL.fieldName cannot contain embedded nulls.

type
Type

Тип поля.The type of the field

attributes
FieldAttributes

Атрибуты поля.The attributes of the field.

Возвраты

Определенное поле.The defined field.

Исключения

Длина параметра fieldName равна нулю.The length of fieldName is zero.

-или--or- Параметр type имеет значение System.Void.type is System.Void.

- или --or- Общий размер был указан для родительского класса этого поля.A total size was specified for the parent class of this field.

fieldNamenull.fieldName is null.

Этот тип был создан ранее с помощью CreateType().The type was previously created using CreateType().

DefineField(String, Type, Type[], Type[], FieldAttributes)

Добавляет новое поле в тип с заданным именем, атрибутами, типом поля и настраиваемыми модификаторами.Adds a new field to the type, with the given name, attributes, field type, and custom modifiers.

public:
 System::Reflection::Emit::FieldBuilder ^ DefineField(System::String ^ fieldName, Type ^ type, cli::array <Type ^> ^ requiredCustomModifiers, cli::array <Type ^> ^ optionalCustomModifiers, System::Reflection::FieldAttributes attributes);
public System.Reflection.Emit.FieldBuilder DefineField (string fieldName, Type type, Type[] requiredCustomModifiers, Type[] optionalCustomModifiers, System.Reflection.FieldAttributes attributes);
member this.DefineField : string * Type * Type[] * Type[] * System.Reflection.FieldAttributes -> System.Reflection.Emit.FieldBuilder

Параметры

fieldName
String

Имя поля.The name of the field. Параметр fieldName не может содержать внедренные значения NULL.fieldName cannot contain embedded nulls.

type
Type

Тип поля.The type of the field

requiredCustomModifiers
Type[]

Массив типов, представляющих обязательные настраиваемые модификаторы для поля, например IsConstModifier.An array of types representing the required custom modifiers for the field, such as IsConstModifier.

optionalCustomModifiers
Type[]

Массив типов, представляющих необязательные настраиваемые модификаторы для поля, например IsConstModifier.An array of types representing the optional custom modifiers for the field, such as IsConstModifier.

attributes
FieldAttributes

Атрибуты поля.The attributes of the field.

Возвраты

Определенное поле.The defined field.

Исключения

Длина параметра fieldName равна нулю.The length of fieldName is zero.

- или --or- Параметр type имеет значение System.Void.type is System.Void.

- или --or- Общий размер был указан для родительского класса этого поля.A total size was specified for the parent class of this field.

Свойство fieldName имеет значение null.fieldName is null.

Этот тип был создан ранее с помощью CreateType().The type was previously created using CreateType().

Комментарии

Эта перегрузка предоставляется для конструкторов управляемых компиляторов.This overload is provided for designers of managed compilers.

Применяется к