Binder.BindToField(BindingFlags, FieldInfo[], Object, CultureInfo) Metodo

Definizione

Seleziona un campo dal gruppo di campi indicato, in base ai criteri specificati.

public:
 abstract System::Reflection::FieldInfo ^ BindToField(System::Reflection::BindingFlags bindingAttr, cli::array <System::Reflection::FieldInfo ^> ^ match, System::Object ^ value, System::Globalization::CultureInfo ^ culture);
public abstract System.Reflection.FieldInfo BindToField (System.Reflection.BindingFlags bindingAttr, System.Reflection.FieldInfo[] match, object value, System.Globalization.CultureInfo? culture);
public abstract System.Reflection.FieldInfo BindToField (System.Reflection.BindingFlags bindingAttr, System.Reflection.FieldInfo[] match, object value, System.Globalization.CultureInfo culture);
abstract member BindToField : System.Reflection.BindingFlags * System.Reflection.FieldInfo[] * obj * System.Globalization.CultureInfo -> System.Reflection.FieldInfo
Public MustOverride Function BindToField (bindingAttr As BindingFlags, match As FieldInfo(), value As Object, culture As CultureInfo) As FieldInfo

Parametri

bindingAttr
BindingFlags

Combinazione bit per bit dei valori di BindingFlags.

match
FieldInfo[]

Gruppo di campi candidati per la corrispondenza. Quando ad esempio l'oggetto Binder viene utilizzato dall'overload InvokeMember, questo parametro specifica il gruppo di campi individuati come possibili corrispondenze da reflection, in genere perché sono contraddistinti dal nome di membro corretto. L'implementazione predefinita fornita dalla proprietà DefaultBinder modifica l'ordine di questa matrice.

value
Object

Valore del campo utilizzato per individuare un campo corrispondente.

culture
CultureInfo

Istanza della classe CultureInfo utilizzata per controllare l'assegnazione dei tipi di dati in implementazioni del gestore di associazione che prevedono l'assegnazione dei tipi. Se culture è null, per il thread corrente verrà usato l'oggetto CultureInfo.

Restituisce

FieldInfo

Il campo corrispondente.

Eccezioni

Per il gestore di associazione predefinito, il parametro bindingAttr include il membro SetField, mentre il parametro match contiene più campi che rappresentano corrispondenze ugualmente valide per il parametro value. Ad esempio, value contiene un oggetto MyClass che implementa l'interfaccia IMyClass e match contiene un campo di tipo MyClass e un campo di tipo IMyClass.

Per il gestore di associazione predefinito, il parametro bindingAttr include il membro SetField, mentre il parametro match non contiene campi che possono accettare il parametro value.

Per il gestore di associazione predefinito, il parametro bindingAttr include il membro SetField, mentre il valore del parametro match è null o una matrice vuota.

-oppure- Il parametro bindingAttr include il membro SetField mentre il valore del parametro value è null.

Commenti

Se bindingAttr non include BindingFlags.SetField, l'implementazione predefinita del binder fornita da Type.DefaultBinder restituisce semplicemente il primo elemento di match. Non viene eseguita alcuna selezione.

Questo metodo controlla l'associazione fornita da Type.InvokeMember.

Se un'implementazione di binder consente la coercizione dei valori stringa in tipi numerici, il culture parametro è necessario per convertire una stringa che rappresenta 1000 in un Double valore, perché 1000 è rappresentato in modo diverso da impostazioni cultura diverse. Con il gestore di associazione predefinito non sono previste tali assegnazioni di stringhe.

Si applica a

Vedi anche