В 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 А вообще, обычно такое не нужно. Если вы расскажете, зачем вам это, может быть, мы предложим более удобный и правильный (и быстрый!) вариант.
Комментариев нет:
Отправить комментарий