TypeBuilder.DefineField TypeBuilder.DefineField TypeBuilder.DefineField Method

定義

動的な型に新しいフィールドを追加します。Adds a new field to the dynamic type.

オーバーロード

DefineField(String, Type, FieldAttributes) DefineField(String, Type, FieldAttributes) 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) DefineField(String, Type, Type[], Type[], FieldAttributes) 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) DefineField(String, Type, FieldAttributes) 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 String String

フィールドの名前。The name of the field. fieldName に埋め込み null 値を含めることはできません。fieldName cannot contain embedded nulls.

type
Type Type Type

フィールドの種類。The type of the field

attributes
FieldAttributes FieldAttributes FieldAttributes

フィールドの属性。The attributes of the field.

戻り値

定義済みのフィールド。The defined field.

例外

fieldName の長さが 0 です。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) DefineField(String, Type, Type[], Type[], FieldAttributes) 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 String String

フィールドの名前。The name of the field. fieldName に埋め込み null 値を含めることはできません。fieldName cannot contain embedded nulls.

type
Type 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 FieldAttributes FieldAttributes

フィールドの属性。The attributes of the field.

戻り値

定義済みのフィールド。The defined field.

例外

fieldName の長さが 0 です。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().

注釈

このオーバー ロードは、マネージ コンパイラの設計者に提供されます。This overload is provided for designers of managed compilers.

適用対象