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.

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

FieldInfo

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

Исключения

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

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

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

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

Комментарии

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

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

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

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

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