Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

FieldInfo.SetValue Method (Object, Object, BindingFlags, Binder, CultureInfo)

When overridden in a derived class, sets the value of the field supported by the given object.

Namespace:  System.Reflection
Assembly:  mscorlib (in mscorlib.dll)
abstract SetValue : 
        obj:Object * 
        value:Object * 
        invokeAttr:BindingFlags * 
        binder:Binder * 
        culture:CultureInfo -> unit

Parameters

obj
Type: System.Object

The object whose field value will be set.

value
Type: System.Object

The value to assign to the field.

invokeAttr
Type: System.Reflection.BindingFlags

A field of Binder that specifies the type of binding that is desired (for example, Binder.CreateInstance or Binder.ExactBinding).

binder
Type: System.Reflection.Binder

A set of properties that enables the binding, coercion of argument types, and invocation of members through reflection. If binder is a null reference (Nothing in Visual Basic), then Binder.DefaultBinding is used.

culture
Type: System.Globalization.CultureInfo

The software preferences of a particular culture.

Implements

_FieldInfo.SetValue(Object, Object, BindingFlags, Binder, CultureInfo)
ExceptionCondition
FieldAccessException

The caller does not have permission to access this field.

TargetException

The obj parameter is a null reference (Nothing in Visual Basic) and the field is an instance field.

ArgumentException

The field does not exist on the object.

-or-

The value parameter cannot be converted and stored in the field.

This method will assign value to the field reflected by this instance on obj. If the field is static, obj will be ignored. For non-static fields, obj should be an instance of a class that inherits or declares the field. The new value is passed as an Object. For example, if the field's type is Boolean, an instance of Object with the appropriate Boolean value is passed. Before setting the value, SetValue checks to see if the user has access permission.

NoteNote

Fully trusted code has the permissions that are needed to access and invoke private constructors, methods, fields, and properties using reflection.

NoteNote

Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to access non-public members if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the non-public members is restricted to the caller’s grant set, or a subset thereof. (See Security Considerations for Reflection.)

To use this functionality, your application should target the .NET Framework 3.5 or later.

.NET Framework

Supported in: 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.

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.