Я хочу иметь доступ к свойству или члену класса по имени. Я в порядке, если это свойство:
PropertyInfo prop = object.GetType().GetProperty(propertyName);
object propValue = prop.GetValue(object, null);
Вещи кажутся немного хитрее, если это элемент / поле. После изучения GetMember
и пробуя кучу разных вещей, я не могу понять, как просто получить ссылку на объект так же, как он будет возвращен из GetProperty
, если бы это было свойство.
Другой вопрос, это правильный путь для достижения этой цели? В чтении об отражении, кажется, много накладных расходов. Это просто по сравнению с неиспользованием рефлексии, или это достаточно важно, чтобы я дважды подумал о разработке чего-то, что будет делать это много, и какие у меня есть альтернативы, если есть, чтобы получить ссылку на члена класс только по имени?
Спасибо за понимание. Если это имеет какое-то значение, моя цель - иметь возможность сериализовать произвольное именованное свойство или член класса.