我正在尝试检索属性的变量名称,而不是值。我目前正在使用反射,但如果有人有其他建议,将不胜感激。
我涉及三个课程
A:
class A
{
public B bObject;
int Number { return bObject.number; } //returns 3
}
乙:
class B
{
public int number = 3;
}
C:
class C
{
public void myMethod()
{
A aObject = new A();
var aNumber = aObject
.GetType()
.GetProperty("Number")
.GetValue(aObject, null);
//this is the value. aNumber = 3.
var objName = nameof(aNumber); //returns aNumber
}
我希望objName 返回字符串“bObject.number”,这是在属性内调用的变量。我目前的设置是否可以这样做,如果没有,是否有人有建议?
我宁愿在 B 中没有另一种方法来返回“nameof(bObject) + nameof(bObject.number)”,然后由于冗余而调用该方法和道具。谢谢你的时间。