找到一个有反射的私人领域?鉴于这门课class Foo{
// Want to find _bar with reflection
[SomeAttribute]
private string _bar;
public string BigBar
{
get { return this._bar; }
}}我希望找到使用属性标记的私有Item_bar。这有可能吗?我在属性中查找了属性,但从未找到私有成员字段。我需要设置哪些绑定标志才能获得私有字段?
3 回答
宝慕林4294392
TA贡献2021条经验 获得超8个赞
BindingFlags.NonPublic
BindingFlags.Instance
FieldInfo[] fields = myType.GetFields( BindingFlags.NonPublic | BindingFlags.Instance);
慕少森
TA贡献2019条经验 获得超9个赞
FieldInfo fi = typeof(Foo).GetField("_bar", BindingFlags.NonPublic | BindingFlags.Instance);if (fi.GetCustomAttributes(typeof(SomeAttribute)) != null)
慕娘9325324
TA贡献1783条经验 获得超4个赞
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 关注
- 429 浏览
添加回答
举报
0/150
提交
取消