当我在抽象类中拥有此属性时:
public IList<Component> Components { get; private set; }
然后当我打电话时:
p.GetSetMethod(true)
p 是一个指向我的属性的 PropertyInfo 对象,我得到 null。
但是,如果我将属性设置器更改为受保护,我可以通过反射看到它。为什么是这样?我似乎不记得非抽象类有这个问题......
我假设您正在从抽象类的派生类型的对象上调用此方法。该类根本没有属性设置器。它仅位于您的抽象基础上。这就是为什么当您将其标记为时它会起作用protected
。你需要使用你的抽象类'Type
相反,在获取属性设置器时。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)