我想使用字符串访问 dynamic
c# 属性的值:
dynamic d = new { value1 = "some", value2 = "random", value3 = "value"};
如果我只有“value2”作为字符串,如何获取 d.value2(“随机”)的值?在 javascript 中,我可以执行 d["value2"] 来访问值(“随机”),但我不确定如何使用 c# 和反射来执行此操作。我最接近的是:
d.GetType().GetProperty("value2")
...但我不知道如何从中获取实际值。
一如既往,感谢您的帮助!
最佳答案
一旦您获得了 PropertyInfo
(来自 GetProperty
),您需要调用 GetValue
并传入您想要获取的实例值(value)来自。在你的情况下:
d.GetType().GetProperty("value2").GetValue(d, null);
关于c# - 通过字符串获取c#动态属性的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4939508/