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의 인스턴스입니다. culturenull이면 현재 스레드의 CultureInfo가 사용됩니다.

반환

FieldInfo

일치하는 필드입니다.

예외

기본 바인더에 대해 bindingAttrSetField가 포함되고 matchvalue와 동등하게 일치하는 여러 필드가 포함된 경우. 예를 들어, valueIMyClass 인터페이스를 구현하는 MyClass 개체가 포함되고 matchMyClass 형식의 필드와 IMyClass 형식의 필드가 포함되어 있습니다.

기본 바인더에 대해 bindingAttrSetField가 포함되고 matchvalue를 받아들일 수 있는 필드가 포함되지 않은 경우

기본 바인더에 대해 bindingAttrSetField가 포함되고 matchnull이거나 빈 배열인 경우

또는 bindingAttrSetField가 포함되고 valuenull인 경우

설명

포함하지 않는 경우 bindingAttr 제공된 기본 바인더 구현은 Type.DefaultBinder 단순히 첫 match번째 요소를 반환BindingFlags.SetField합니다. 선택하지 않습니다.

이 메서드는 에서 제공하는 바인딩을 Type.InvokeMember제어합니다.

바인더 구현에서 문자열 값을 숫자 형식 culture 으로 강제 변환할 수 있는 경우 매개 변수는 1000을 나타내는 문자열을 값으로 변환해야 합니다 Double . 1000은 서로 다른 문화권에 의해 다르게 표현되기 때문입니다. 기본 바인더는 이러한 문자열 강제 변환을 수행하지 않습니다.

적용 대상

추가 정보