【发布时间】:2011-02-25 20:21:43
【问题描述】:
我希望能够按名称访问类的属性或成员。如果它是一个属性,我很好:
PropertyInfo prop = object.GetType().GetProperty(propertyName);
object propValue = prop.GetValue(object, null);
如果它是成员/字段,事情似乎有点棘手。在研究了GetMember 并尝试了一堆不同的东西之后,我不知道如何像从GetProperty 返回的对象一样获取对对象的引用,如果它是一个属性的话。
另一个问题是,这是实现此目的的正确方法吗?在阅读有关反射的内容时,它似乎有很多开销。这仅仅是与不使用反射相比,还是它足够重要以至于我应该三思而后行地开发一些会经常这样做的东西,以及我有什么替代方案(如果有的话)来获得对 a 成员的引用仅按名称分类?
感谢您的任何见解。如果有什么不同,我的目标是能够序列化任意命名的属性或类的成员。
【问题讨论】:
标签: c# reflection