Binder.BindToField(BindingFlags, FieldInfo[], Object, CultureInfo) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
根据指定的条件从给定的字段集中选择一个字段。
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 包含 MyClass 实现 IMyClass 接口的对象,并 match 包含类型字段 MyClass 和类型的 IMyClass字段。
对于默认绑定器, bindingAttr 包括 SetField和 match 不包含任何可以接受 value的字段。
注解
如果未 bindingAttr 包含 BindingFlags.SetField,则默认绑定器实现仅 Type.DefaultBinder 返回第一个元素 match。 未完成选择。
此方法控制由 Type.InvokeMember. 提供的绑定。
如果绑定器实现允许将字符串值强制转换为数值类型, culture 则参数必须将表示 1000 的字符串转换为值 Double ,因为不同的区域性以不同的方式表示 1000。 默认绑定器不执行此类字符串强制。