How to set value of property where there is no setter

前端 未结 2 535
礼貌的吻别
礼貌的吻别 2020-12-06 17:34

I have seen various questions raised and answered where we can invoke a private setter using reflection such as this one:

Is it possible to get a property's priv

2条回答
  •  广开言路
    2020-12-06 18:32

    I do not suggest doing this on your application but for testing purpose it may be usefull...

    Assuming you have:

    public class MyClass
    {
         public int MyNumber {get;}
    }
    

    You could do this if its for test purpose, I would not suggest to use this in your runtime code:

    var field = typeof(MyClass).GetField("k__BackingField", BindingFlags.Instance | BindingFlags.NonPublic);
    field.SetValue(anIstanceOfMyClass, 3);
    

提交回复
热议问题