Compartir vía


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

Definición

Selecciona un campo a partir de un conjunto de campos dado, según los criterios 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);
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

Combinación bit a bit de valores BindingFlags.

match
FieldInfo[]

El conjunto de campos que podrían coincidir. Por ejemplo, cuando un método Binder utiliza un objeto InvokeMember, este parámetro especifica el conjunto de campos que la reflexión ha determinado como posibles coincidencias, normalmente porque tienen el nombre de miembro correcto. La implementación predeterminada proporcionada por DefaultBinder cambia el orden de esta matriz.

value
Object

Valor del campo utilizado para localizar un campo coincidente.

culture
CultureInfo

Instancia de CultureInfo que se utiliza para controlar la conversión de tipos de datos en implementaciones de enlazadores en las que se convierten tipos. Si culture es null, se usa CultureInfo del subproceso actual.

Devoluciones

El campo correspondiente.

Excepciones

En el enlazador predeterminado, bindingAttr incluye SetField y match contiene varios campos que constituyen coincidencias igualmente buenas para value. Por ejemplo, value contiene un MyClass objeto que implementa la IMyClass interfaz y match contiene un campo de tipo MyClass y un campo de tipo IMyClass.

En el enlazador predeterminado, bindingAttr incluye SetField y match no contiene ningún campo que pueda aceptar value.

En el enlazador predeterminado, bindingAttr incluye SetField y match es null o una matriz vacía.

o bien

bindingAttr incluye SetField y value es null.

Comentarios

Si bindingAttr no incluye BindingFlags.SetField, la implementación predeterminada del enlazador proporcionada simplemente Type.DefaultBinder devuelve el primer elemento de match. No se realiza ninguna selección.

Este método controla el enlace proporcionado por Type.InvokeMember.

Si una implementación de enlazador permite la coerción de valores de cadena a tipos numéricos, el culture parámetro es necesario para convertir una cadena que representa 1000 a un Double valor, ya que 1000 se representa de forma diferente por referencias culturales diferentes. El enlazador predeterminado no realiza estas conversiones de cadenas.

Se aplica a

Consulte también