用反射发出定义字段
更新: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 枚举的说明。