FieldBuilder.SetValue Metoda

Definicja

Ustawia wartość pola obsługiwanego przez dany obiekt.

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)

Parametry

obj
Object

Obiekt, na którym ma uzyskać dostęp do pola.

val
Object

Wartość do przypisania do pola.

invokeAttr
BindingFlags

Element członkowski IBinder określający żądany typ powiązania (na przykład IBinder.CreateInstance, IBinder.ExactBinding).

binder
Binder

Zestaw właściwości i włączanie powiązania, wymuszania typów argumentów i wywołania elementów członkowskich przy użyciu odbicia. Jeśli binder ma wartość null, jest używany element IBinder.DefaultBinding.

culture
CultureInfo

Preferencje dotyczące oprogramowania określonej kultury.

Wyjątki

Ta metoda nie jest obsługiwana.

Uwagi

Ta metoda przypisze val parametr do pola odzwierciedlonego przez to wystąpienie w dniu Objectobj. Jeśli pole jest statyczne, obj zostanie zignorowane. W przypadku pól obj niestatycznych należy być wystąpieniem klasy, która dziedziczy lub deklaruje pole.

Nowa wartość jest przekazywana jako Object. Jeśli na przykład typ pola jest wartością logiczną, zostanie przekazane wystąpienie Object z odpowiednią wartością logiczną. Przed ustawieniem wartości sprawdza, SetValue czy użytkownik ma uprawnienia dostępu.

Ograniczenia dostępu są ignorowane dla w pełni zaufanego kodu. Private konstruktory, metody, pola i właściwości mogą być dostępne i wywoływane przy użyciu odbicia za każdym razem, gdy kod jest w pełni zaufany.

Uwaga

Ta metoda nie jest obecnie obsługiwana. Aby obejść ten problem, pobierz element FieldInfo , odzwierciedlając gotowy typ i wywołanie SetValue , aby ustawić wartość pola.

Dotyczy