找到一個(gè)有反射的私人領(lǐng)域?鑒于這門課class Foo{
// Want to find _bar with reflection
[SomeAttribute]
private string _bar;
public string BigBar
{
get { return this._bar; }
}}我希望找到使用屬性標(biāo)記的私有Item_bar。這有可能嗎?我在屬性中查找了屬性,但從未找到私有成員字段。我需要設(shè)置哪些綁定標(biāo)志才能獲得私有字段?
3 回答

元芳怎么了
TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超7個(gè)贊
BindingFlags.NonPublic
BindingFlags.Instance
FieldInfo[] fields = myType.GetFields( BindingFlags.NonPublic | BindingFlags.Instance);

牛魔王的故事
TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超3個(gè)贊
FieldInfo fi = typeof(Foo).GetField("_bar", BindingFlags.NonPublic | BindingFlags.Instance);if (fi.GetCustomAttributes(typeof(SomeAttribute)) != null) ...

米脂
TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超3個(gè)贊
var _barVariable = typeof(Foo).GetField("_bar", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(objectForFooClass);
typeof(Foo).GetField("_bar", BindingFlags.NonPublic | BindingFlags.Instance).SetValue(objectForFoocClass, "newValue");
- 3 回答
- 0 關(guān)注
- 426 瀏覽
添加回答
舉報(bào)
0/150
提交
取消