FieldBuilder.SetValue 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
设置给定对象支持的字段的值。
public:
override void SetValue(System::Object ^ obj, System::Object ^ val, System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, System::Globalization::CultureInfo ^ culture);
public override void SetValue (object? obj, object? val, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder? binder, System.Globalization.CultureInfo? culture);
public override void SetValue (object obj, object val, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Globalization.CultureInfo culture);
override this.SetValue : obj * obj * System.Reflection.BindingFlags * System.Reflection.Binder * System.Globalization.CultureInfo -> unit
Public Overrides Sub SetValue (obj As Object, val As Object, invokeAttr As BindingFlags, binder As Binder, culture As CultureInfo)
参数
- obj
- Object
要访问字段的对象。
- val
- Object
要分配给字段的值。
- invokeAttr
- BindingFlags
IBinder
的成员,指定所需的绑定类型(例如 IBinder.CreateInstance、IBinder.ExactBinding)。
- binder
- Binder
一组属性,用于绑定、强制参数类型和使用反射调用成员。 如果 binder 为 null,则使用 IBinder.DefaultBinding。
- culture
- CultureInfo
特定区域性的软件首选项。
例外
不支持此方法。
注解
此方法会将 val
参数分配给 Objectobj
上此实例反映的字段。 如果该字段是静态的,则忽略 obj
。 对于非静态字段,obj
应该是继承或声明字段的类的实例。
新值作为 Object传递。 例如,如果字段的类型为布尔值,则传递具有相应布尔值的 Object 实例。 在设置值之前,SetValue 检查用户是否具有访问权限。
对于完全受信任的代码,将忽略访问限制。 只要代码完全受信任,就可以使用反射访问和调用 Private
构造函数、方法、字段和属性。