Страницы

Поиск по вопросам

суббота, 23 марта 2019 г.

Доступ к полю или свойству по имени

В ActionScript 3 есть такой способ доступа к полям и свойствам экземпляра obj.name = "value1"; // прямой доступ trace(obj.name); // value1 obj["name"] = "value2"; // доступ по имени trace(obj.name); // value2 Какие есть варианты реализации такой штуки на C#? (в догонку - возможно ли итерировать (foreach) по именам/значениям свойств?)


Ответ

Проще всего через reflection: FieldInfo fi = typeof(YourClass).GetField("field_name_here"); object fieldValue = fi.GetValue(yourClassInstance); Итерировать можно тоже, см. пример в самом низу страницы: http://msdn.microsoft.com/en-us/library/system.reflection.fieldinfo.aspx А вообще, обычно такое не нужно. Если вы расскажете, зачем вам это, может быть, мы предложим более удобный и правильный (и быстрый!) вариант.

Комментариев нет:

Отправить комментарий