Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
03.02.2013, 09:01
|
|||
---|---|---|---|
Насчёт получения имени члена класса в виде строки |
|||
#18+
Вот например можно так получить имя члена класса в виде строки: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
И использовать это примерно так Код: c# 1.
Вопрос, откуда лямбда-выражение знает имя члена в виде строки - node.Member.Name - и почему, чтобы получить имя члена в виде строки, я должен писать целую функцию, вместо того, чтобы вызвать уже готовый метод или просто прочитать значение свойства, как тут написано? Ведь выражение уже как-то знает сразу имя члена в виде строки - почему я не могу иметь такой же прямой доступ и именам членов в виде строки? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
03.02.2013, 09:34
|
|||
---|---|---|---|
Насчёт получения имени члена класса в виде строки |
|||
#18+
И ещё вопрос - как получали строковое имя члена класса до появления лямбда-выражений, т. е. до версии 3 фреймворка? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
03.02.2013, 10:52
|
|||
---|---|---|---|
Насчёт получения имени члена класса в виде строки |
|||
#18+
System.Reflection? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
03.02.2013, 11:27
|
|||
---|---|---|---|
Насчёт получения имени члена класса в виде строки |
|||
#18+
Antonariy, рефлексия требует ввода жёсткозакодированного имени свойства (проблемы с рефакторингом и костыли для их устранения): Код: c# 1.
а подход с лямбдами не требует хардкодинга. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
03.02.2013, 16:58
|
|||
---|---|---|---|
Насчёт получения имени члена класса в виде строки |
|||
#18+
user7320, внутри методов создания экземпляра класса MemberExpression используется System.Reflection, вот и вся магия. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
03.02.2013, 17:02
|
|||
---|---|---|---|
Насчёт получения имени члена класса в виде строки |
|||
#18+
P.S.: если код в начале топика взят из статьи: Getting Information About Objects, Types, and Members with Expression Trees , - то там в первом параграфе есть ссылка на основы Expression Tree. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=20&mobile=1&tid=1405236]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
others: | 319ms |
total: | 464ms |
0 / 0 |