Condividi tramite


FieldBuilder.SetValue Metodo

Definizione

Imposta il valore del campo supportato dall'oggetto specificato.

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)

Parametri

obj
Object

Oggetto su cui accedere al campo.

val
Object

Valore da assegnare al campo.

invokeAttr
BindingFlags

Membro di IBinder che specifica il tipo di associazione desiderato, ad esempio IBinder.CreateInstance, IBinder.ExactBinding.

binder
Binder

Set di proprietà e abilitazione per l'associazione, la coercizione dei tipi di argomento e la chiamata dei membri tramite reflection. Se binder è null, viene usato IBinder.DefaultBinding.

culture
CultureInfo

Le preferenze software di una determinata cultura.

Eccezioni

Questo metodo non è supportato.

Commenti

Questo metodo assegnerà il parametro val al campo riflesso da questa istanza in Objectobj. Se il campo è statico, obj verrà ignorato. Per i campi non statici, obj deve essere un'istanza di una classe che eredita o dichiara il campo.

Il nuovo valore viene passato come Object. Ad esempio, se il tipo del campo è booleano, viene passata un'istanza di Object con il valore booleano appropriato. Prima di impostare il valore, SetValue verifica se l'utente dispone dell'autorizzazione di accesso.

Le restrizioni di accesso vengono ignorate per il codice completamente attendibile. Private costruttori, metodi, campi e proprietà possono essere accessibili e richiamati tramite Reflection ogni volta che il codice è completamente attendibile.

Nota

Questo metodo non è attualmente supportato. Come soluzione alternativa, recuperare il FieldInfo riflettendo sul tipo finito e chiamare SetValue per impostare il valore del campo.

Si applica a