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

Definicja

Wybiera pole z danego zestawu pól na podstawie określonych kryteriów.

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

Parametry

bindingAttr
BindingFlags

Bitowa kombinacja BindingFlags wartości.

match
FieldInfo[]

Zestaw pól, które są kandydatami do dopasowania. Na przykład gdy Binder obiekt jest używany przez InvokeMemberprogram , ten parametr określa zestaw pól, które odbicia mają być możliwe dopasowania, zazwyczaj dlatego, że mają prawidłową nazwę elementu członkowskiego. Domyślna implementacja zapewniana przez DefaultBinder zmianę kolejności tej tablicy.

value
Object

Wartość pola używana do lokalizowania pasującego pola.

culture
CultureInfo

Wystąpienie klasy , które służy do kontrolowania CultureInfo przymusu typów danych w implementacjach binder, które są typami coerce. Jeśli culture parametr ma nullwartość , CultureInfo jest używany element dla bieżącego wątku.

Zwraca

Pasujące pole.

Wyjątki

W przypadku domyślnego powiązania bindingAttr zawiera element i SetField zawiera wiele pól, które są równie dobrymi dopasowaniami dla elementu matchvalue. Na przykład value zawiera MyClass obiekt, który implementuje IMyClass interfejs i match zawiera pole typu MyClass i pole typu IMyClass.

W przypadku domyślnego powiązania bindingAttr zawiera element i SetField nie zawiera pól, które mogą akceptować matchvalue.

W przypadku domyślnego powiązania bindingAttr zawiera SetFieldelement , i match jest null lub pustą tablicą.

— lub —

bindingAttr zawiera SetFieldelement , i value ma wartość null.

Uwagi

Jeśli bindingAttr nie zawiera BindingFlags.SetFieldelementu , domyślna implementacja powiązania dostarczona przez Type.DefaultBinder program po prostu zwraca pierwszy element elementu match. Nie ma zaznaczenia.

Ta metoda steruje powiązaniem dostarczonym przez Type.InvokeMemberprogram .

Jeśli implementacja powiązania zezwala na przymus wartości ciągów do typów liczbowych, culture parametr jest niezbędny do przekonwertowania ciągu reprezentującego wartość 1000 na Double wartość, ponieważ 1000 jest reprezentowane inaczej przez różne kultury. Domyślny binder nie wykonuje takich przymusów ciągów.

Dotyczy

Zobacz też