FieldBuilder.SetValue Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Задает значение поля, поддерживаемого заданным объектом.
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
Набор свойств и включение привязки, приведения типов аргументов и вызова элементов с помощью отражения. Если привязка имеет значение NULL, используется IBinder.DefaultBinding.
- culture
- CultureInfo
Параметры программного обеспечения определенного языка и региональных параметров.
Исключения
Этот метод не поддерживается.
Комментарии
Этот метод назначит параметру val
поле, отраженное этим экземпляром в Objectobj
. Если поле является статическим, obj
будет игнорироваться. Для нестатических полей obj
должен быть экземпляром класса, наследующего или объявляющего поле.
Новое значение передается в виде Object. Например, если тип поля является логическим, передается экземпляр Object с соответствующим логическим значением. Прежде чем задать значение, SetValue проверяет, имеет ли пользователь разрешение на доступ.
Ограничения доступа игнорируются для полностью доверенного кода.
Private
конструкторы, методы, поля и свойства могут быть доступны и вызываться с помощью отражения всякий раз, когда код полностью доверяется.
Заметка
Этот метод в настоящее время не поддерживается. В качестве обходного решения получите FieldInfo, отражая готовый тип и вызывая SetValue, чтобы задать значение поля.