获取当前类和基类的所有属性
本文关键字:属性 基类 获取 | 更新日期: 2023-09-27 18:17:28
我有两个类(让我们说"BaseItem"answers"ChildItem")与几个内部属性。在BaseClass中,我定义了一个方法,它应该用
读取所有这些属性。PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(this);
或
PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(this.GetType());
当我在"ChildItem"的实例中调用这个方法时,我只得到在"ChildItem"中定义的属性。我能做些什么来获得"BaseItem"的属性?
对
戴夫对于内部属性(如问题注释中所澄清的),尽管没有指出(它们是内部的),您可以使用:
var internalProperties = GetType().GetProperties(
BindingFlags.Instance |
BindingFlags.NonPublic |
BindingFlags.Public));
需要应用的标志是BindingFlags.NonPublic
你可以把它分别转换为BaseItem
和GetProperties()
。