Binder.BindToField(BindingFlags, FieldInfo[], Object, CultureInfo) Método

Definição

Seleciona um campo do determinado conjunto de campos, com base nos critérios especificados.

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);
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

Parâmetros

bindingAttr
BindingFlags

Uma combinação bit a bit de BindingFlags valores.

match
FieldInfo[]

O conjunto de campos que são candidatos à correspondência. Por exemplo, quando um Binder objeto é usado por InvokeMember, esse parâmetro especifica o conjunto de campos que a reflexão determinou ser possíveis correspondências, normalmente porque eles têm o nome de membro correto. A implementação padrão fornecida altera DefaultBinder a ordem dessa matriz.

value
Object

O valor do campo usado para localizar um campo correspondente.

culture
CultureInfo

Uma instância disso CultureInfo é usada para controlar a coerção de tipos de dados, em implementações de associador que coagim tipos. Se culture for null, o CultureInfo thread atual será usado.

Retornos

O campo correspondente.

Exceções

Para o associador padrão, bindingAttr inclui SetFielde match contém vários campos que são igualmente bons para value. Por exemplo, value contém um MyClass objeto que implementa a IMyClass interface e match contém um campo de tipo MyClass e um campo de tipo IMyClass.

Para o associador padrão, bindingAttr inclui SetFielde match não contém campos que podem aceitar value.

Para o associador padrão, bindingAttr inclui SetFielde match é ou uma null matriz vazia.

-ou-

bindingAttr inclui SetField, e value é null.

Comentários

Se bindingAttr não incluir BindingFlags.SetField, a implementação do associador padrão fornecida simplesmente Type.DefaultBinder retornará o primeiro elemento de match. Nenhuma seleção foi feita.

Esse método controla a associação fornecida por Type.InvokeMember.

Se uma implementação de associador permitir a coerção de valores de cadeia de caracteres para tipos numéricos, o culture parâmetro será necessário para converter uma cadeia de caracteres que representa 1000 em um Double valor, pois 1000 é representado de forma diferente por culturas diferentes. O associador padrão não faz essas coerções de cadeia de caracteres.

Aplica-se a

Confira também