Поделиться через


Binder.BindToField(BindingFlags, FieldInfo[], Object, CultureInfo) Метод

Определение

Выбирает поле из заданного набора полей с учетом заданных критериев.

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

Параметры

bindingAttr
BindingFlags

Побитовое сочетание значений BindingFlags.

match
FieldInfo[]

Набор полей, которые являются кандидатами для сопоставления. Например, если объект Binder используется методом InvokeMember, этот параметр указывает набор полей, определенных в отражении как возможные соответствия, как правило в связи с тем, что они имеют правильное имя члена. Реализация по умолчанию, предоставленная свойством DefaultBinder, изменяет порядок этого массива.

value
Object

Значение поля, используемое для нахождения соответствующего поля.

culture
CultureInfo

Экземпляр класса CultureInfo, который используется для управления приведения типов данных в реализациях связывателя, выполняющих приведение типов. Если параметр culture имеет значение null, для текущего потока используется объект CultureInfo.

Возвращаемое значение

Соответствующее поле.

Исключения

В связывателе по умолчанию параметр bindingAttr содержит флаг SetField, а параметр match — несколько полей, в равной мере соответствующих параметру value. Например, содержит объект , value реализующий IMyClass интерфейс , а match также поле типа MyClass и поле типа IMyClass.MyClass

В связывателе по умолчанию параметр bindingAttr содержит флаг SetField, а параметр match не содержит полей, которые могут принимать значение value.

В связывателе по умолчанию параметр bindingAttr содержит флаг SetField, а параметр match имеет значение null или является пустым массивом.

-или-

Параметр bindingAttr содержит флаг SetField, а параметр value имеет значение null.

Комментарии

Если bindingAttr не включает BindingFlags.SetField, реализация средства привязки по умолчанию, предоставляемая Type.DefaultBinder просто возвращает первый элемент .match Выбор не выполняется.

Этот метод управляет привязкой, предоставляемой Type.InvokeMember.

Если реализация связывателя позволяет приведение строковых значений к числовым типам, culture параметр необходим для преобразования строки, представляющей 1000, в Double значение, так как значение 1000 по-разному представлено разными языками и региональными параметрами. Связыватель по умолчанию не выполняет подобного преобразования строковых типов.

Применяется к

См. также раздел