用反射发出定义字段

更新:2007 年 11 月

可使用 TypeBuilder.DefineField 方法将字段定义为类型成员。DefineField 方法要求调用方指定字段名、字段类型和字段属性(使用 FieldAttributes 枚举)。DefineField 返回一个 FieldBuilder

FieldBuilder.SetOffset 定义字段布局。FieldBuilder.SetMarshal 定义字段的封送方式。FieldBuilder.SetConstant 定义字段的默认值。

字段也可以引用可移植可执行 (PE) 文件的 .sdata 节中的数据。表示已初始化数据的字段是使用 ModuleBuilder.DefineInitializedData 定义的。表示未初始化数据的字段是使用 ModuleBuilder.DefineUninitializedData 定义的。

属性

  • 使用 FieldAttributes.Static 属性指定静态字段。

  • 使用 FieldAttributes.InitOnly 属性指定可初始化但不能被继续写入的字段。

  • 使用 FieldAttributes.Literal 属性指定为编译时常数的字段。

  • 有若干确定字段可见性的属性。请参见 FieldAttributes 枚举的说明。

请参见

其他资源

使用反射发出