Binder.BindToField Method

Selects a field from the given set of fields, based on the specified criteria.

Namespace:  System.Reflection
Assembly:  mscorlib (in mscorlib.dll)

public abstract FieldInfo BindToField(
	BindingFlags bindingAttr,
	FieldInfo[] match,
	Object value,
	CultureInfo culture
)

Parameters

bindingAttr
Type: System.Reflection.BindingFlags

A bitwise combination of BindingFlags values.

match
Type: System.Reflection.FieldInfo[]

The set of fields that are candidates for matching. For example, when a Binder object is used by Type.InvokeMember, this parameter specifies the set of fields that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by Type.DefaultBinder changes the order of this array.

value
Type: System.Object

The field value used to locate a matching field.

culture
Type: System.Globalization.CultureInfo

An instance of CultureInfo that is used to control the coercion of data types, in binder implementations that coerce types. If culture is null, the CultureInfo for the current thread is used.

Note   For example, if a binder implementation allows coercion of string values to numeric types, this parameter is necessary to convert a String that represents 1000 to a Double value, because 1000 is represented differently by different cultures. The default binder does not do such string coercions.

Return Value

Type: System.Reflection.FieldInfo
The matching field.

ExceptionCondition
AmbiguousMatchException

For the default binder, bindingAttr includes BindingFlags.SetField, and match contains multiple fields that are equally good matches for value. For example, value contains a MyClass object that implements the IMyClass interface, and match contains a field of type MyClass and a field of type IMyClass.

MissingFieldException

For the default binder, bindingAttr includes BindingFlags.SetField, and match contains no fields that can accept value.

NullReferenceException

For the default binder, bindingAttr includes BindingFlags.SetField, and match is null or an empty array.

-or-

bindingAttr includes BindingFlags.SetField, and value is null.

If bindingAttr does not include BindingFlags.SetField, the default binder implementation provided by Type.DefaultBinder simply returns the first element of match. No selection is done.

This method controls the binding provided by Type.InvokeMember.

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft