Sdílet prostřednictvím


FieldBuilder.SetValue Metoda

Definice

Nastaví hodnotu pole podporovaného daným objektem.

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

Objekt, na kterém se má získat přístup k poli.

val
Object

Hodnota, která se má přiřadit k poli.

invokeAttr
BindingFlags

Člen IBinder , který určuje požadovaný typ vazby (například IBinder.CreateInstance, IBinder.ExactBinding).

binder
Binder

Sada vlastností a povolení vazby, vynucování typů argumentů a vyvolání členů pomocí reflexe Pokud je pořadač null, použije se IBinder.DefaultBinding.

culture
CultureInfo

Předvolby softwaru pro konkrétní jazykovou verzi.

Výjimky

Tato metoda není podporována.

Poznámky

Tato metoda přiřadí val parametr k poli, které tato instance odráží na Objectobj. Pokud je pole statické, obj bude ignorováno. Pro nestatické pole by měla být instance třídy, obj která zdědí nebo deklaruje pole.

Nová hodnota se předá jako Object. Pokud je například typ pole Logický, předá se instance Object s příslušnou logickou hodnotou. Před nastavením hodnoty zkontroluje, SetValue jestli má uživatel oprávnění k přístupu.

Omezení přístupu se u plně důvěryhodného kódu ignorují. Private Konstruktory, metody, pole a vlastnosti lze přistupovat a vyvolat pomocí reflexe vždy, když je kód plně důvěryhodný.

Poznámka

Tato metoda se v současné době nepodporuje. Jako alternativní řešení načtěte FieldInfo hodnotu tak, že se odrazíte na dokončeném typu a zavoláním SetValue , abyste nastavili hodnotu pole.

Platí pro