我正在踩着一些代码并查看一个PropertyInfo对象并想知道如何获取它的base.Name
alt text http://www.yart.com.au/stackoverflow/propertyinfo.png
我可以在调试器中看到这个,但我不知道怎么做,因为PropertyInfo上没有“base”属性
答案 0 :(得分:7)
您可以通过property.Name访问此属性。
调试器显示base.Name的事实有点用词不当。实际上,C#EE正在评估引擎盖下的property.Name。它实际上并不评估“base.Name”。
无论属性/方法是否为虚拟,都是如此。原因是CLR deubgger没有提供EE可以在非虚方法中调用虚方法的方法。有一些方法可以通过relfection调用方法来实现这种效果,但C#或VB.Net都不会在各自的EE中使用这条路径。
答案 1 :(得分:6)
只需使用.Name
; PropertyInfo
未定义此内容 - 它从MemberInfo
答案 2 :(得分:2)
只需:
property.Name