让我们说你有:
PropertyInfo propInfo;
//假设已经使用私有字段的属性初始化了
(private int m_Number
)
如果我propInfo.PropertyType.Name
,我想我会得到类似int32
或int
的内容。
两个问题:
1 即可。如何通过propInfo
提取变量名称“m_Number”
注意:一旦我能够通过迭代FieldInfo
而不是propInfo
来完成此操作。
2 即可。如果我想使用反射来知道给定类的所有类型的字段,那么应该是正确的方法:
A 即可。迭代所有属性(假设每个字段都有属性)
的乙即可。直接迭代所有字段。
由于
答案 0 :(得分:1)
属性不一定与字段相关 - 事实上,在一对函数之上,属性只不过是一个语法糖。
如果您的代码使用某种约定来命名返回属性的变量(例如在m_
前面加上它们,就像在您的示例中那样),您可以依赖该约定来检索变量名称。在所有其他情况下,没有直接连接,也无法通过反射API检索该关系。