FieldBuilder.SetValue Método

Definição

Define o valor do campo com suporte no objeto especificado.

public:
 override void SetValue(System::Object ^ obj, System::Object ^ val, System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, System::Globalization::CultureInfo ^ culture);
public override void SetValue (object? obj, object? val, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder? binder, System.Globalization.CultureInfo? culture);
public override void SetValue (object obj, object val, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Globalization.CultureInfo culture);
override this.SetValue : obj * obj * System.Reflection.BindingFlags * System.Reflection.Binder * System.Globalization.CultureInfo -> unit
Public Overrides Sub SetValue (obj As Object, val As Object, invokeAttr As BindingFlags, binder As Binder, culture As CultureInfo)

Parâmetros

obj
Object

O objeto no qual acessar o campo.

val
Object

O valor a ser atribuído ao campo.

invokeAttr
BindingFlags

Um membro de IBinder que especifica o tipo de associação que é desejada (por exemplo, IBinder.CreateInstance, IBinder.ExactBinding).

binder
Binder

Um conjunto de propriedades e permissão para associação e coerção de tipos de argumento, bem como invocação de membros usando reflexão. Se binder for nulo, IBinder.DefaultBinding será usado.

culture
CultureInfo

As preferências de software de uma determinada cultura.

Exceções

Não há suporte para o método.

Comentários

Esse método atribuirá o val parâmetro ao campo refletido por essa instância em Objectobj. Se o campo for estático, obj será ignorado. Para campos não estáticos, obj deve ser uma instância de uma classe que herda ou declara o campo.

O novo valor é passado como um Object. Por exemplo, se o tipo do campo for booliano, uma instância de Object com o valor booliano apropriado será passada. Antes de definir o valor, SetValue verifica se o usuário tem permissão de acesso.

As restrições de acesso são ignoradas para código totalmente confiável. Private construtores, métodos, campos e propriedades podem ser acessados e invocados usando Reflexão sempre que o código for totalmente confiável.

Observação

Não há suporte para este método atualmente. Como solução alternativa, recupere o FieldInfo refletindo sobre o tipo concluído e chame SetValue para definir o valor do campo.

Aplica-se a