Freigeben über


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

Definition

Wählt anhand der angegebenen Kriterien ein Feld aus der angegebenen Gruppe von Feldern aus.

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

Parameter

bindingAttr
BindingFlags

Eine bitweise Kombination von BindingFlags-Werten.

match
FieldInfo[]

Die Reihe der Felder, die Kandidaten für Übereinstimmungen sind. Wenn beispielsweise ein Binder-Objekt von InvokeMember verwendet wird, gibt dieser Parameter die Reihe von Feldern an, die von der Reflektion als mögliche Übereinstimmungen bestimmt wurden, typischerweise weil sie den entsprechenden Membernamen aufweisen. Die von DefaultBinder bereitgestellte Standardimplementierung ändert die Reihenfolge dieses Arrays.

value
Object

Der Feldwert, mit dem ein übereinstimmendes Feld gesucht wird.

culture
CultureInfo

Eine Instanz von CultureInfo, mit der in Binderimplementierungen mit Typumwandlungen die Umwandlung von Datentypen gesteuert wird. Wenn culture den Wert null hat, wird die CultureInfo des aktuellen Threads verwendet.

Gibt zurück

Das entsprechende Feld.

Ausnahmen

Für den Standardbinder enthält bindingAttrSetField, und match enthält mehrere Felder, die gleichwertige Übereinstimmungen für value sind. Enthält beispielsweise ein -Objekt, value das die IMyClass -Schnittstelle implementiert, und match enthält ein Feld vom Typ MyClass und ein Feld vom Typ IMyClass.MyClass

Für den Standardbinder enthält bindingAttrSetField, und match enthält keine Felder, die value annehmen können.

Für den Standardbinder enthält bindingAttrSetField, und match ist null oder ein leeres Array.

- oder -

bindingAttr enthält SetField, und value ist null.

Hinweise

Wenn bindingAttr nicht enthalten BindingFlags.SetFieldist, gibt die standardmäßige Binderimplementierung, die von bereitgestellt wird Type.DefaultBinder , einfach das erste Element von matchzurück. Es wird keine Auswahl vorgenommen.

Diese Methode steuert die von bereitgestellte Type.InvokeMemberBindung.

Wenn eine Binderimplementierung die Koerziierung von Zeichenfolgenwerten zu numerischen Typen zulässt, ist der culture Parameter erforderlich, um eine Zeichenfolge, die 1000 darstellt, in einen Double Wert zu konvertieren, da 1000 von verschiedenen Kulturen unterschiedlich dargestellt wird. Der Standardbinder führt keine solchen Zeichenfolgenumwandlungen aus.

Gilt für:

Weitere Informationen