所以我现在所拥有的是这样的:
PropertyInfo[] info = obj.GetType().GetProperties(BindingFlags.Public);
where obj
是某个对象。
问题是我想要的一些属性不在其中obj.GetType()
他们属于更高一级的基础班之一。如果我停止调试器并查看 obj,我必须挖掘一些“基本”条目才能查看我想要获取的属性。是否有一些绑定标志我可以设置让它返回那些或者我是否必须递归地挖掘Type.BaseType
层次结构和做GetProperties
在他们所有人身上?
用这个:
PropertyInfo[] info = obj.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance);
编辑:当然正确的答案是Jay https://stackoverflow.com/questions/245055/how-do-you-get-the-all-properties-of-a-class-and-its-base-classes-up-the-hierar#245131. GetProperties()
不带参数相当于GetProperties(BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static )
. The BindingFlags.FlattenHierarchy
在这里不起作用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)