2

我正在单步执行一些代码并查看 PropertyInfo 对象并想知道如何获取它的 base.Name

替代文字 http://www.yart.com.au/stackoverflow/propertyinfo.png

我可以在调试器中看到这一点,但我不确定如何执行此操作,因为 PropertyInfo 上没有“基础”属性

4

3 回答 3

7

您可以通过 property.Name 访问此属性。

调试器显示 base.Name 的事实有点用词不当。实际上,C# EE 正在评估幕后的 property.Name。它实际上并不评估“base.Name”。

无论属性/方法是否是虚拟的,这都是正确的。原因是 CLR 调试器没有提供 EE 可以在非虚拟方法中调用虚拟方法的方法。有一些方法可以通过 relfection 调用方法来实现这种效果,但 C# 或 VB.Net 在各自的 EE 中都没有走这条路。

于 2009-04-09T13:46:35.017 回答
6

只需使用.Name; PropertyInfo没有定义这个 - 它继承自MemberInfo

于 2009-04-09T13:45:10.760 回答
2

只是:

property.Name
于 2009-04-09T13:45:14.550 回答