Здравствуйте, VVVa, Вы писали:
VVV>Здравствуйте, RushDevion, Вы писали:
RD>>Как это выглядеть должно, приведи пример?
VVV>да просто много одинаковых делегатов инициализированных лямбда выражениями в списке и надо бы этот порядок сахранить/загрузить из файла
это называется конфигурация. создаете словарик [имя функции -> лямбда]. в файл сохраняете порядок имен, при запуске программы достаете из словарика нужную лямбду. VVV>а если я делаю List.Add(() => { ... }); то тоже будут проблемы с "Превратить строковый вид обратно в делегат"
Cкорее всего вам это не нужно. Или более детально опишите задачу.
Вытащить информацию о типе/методе из делегата или expression — это возможно.
Представить ее в каком-то строковом виде — тоже возможно.
Превратить строковый вид обратно в делегат или expression — в общем случае нет, т.к для не-статических вызовов нужен будет экземпляр объекта.
Здравствуйте, RushDevion, Вы писали:
RD>Как это выглядеть должно, приведи пример?
да просто много одинаковых делегатов инициализированных лямбда выражениями в списке и надо бы этот порядок сахранить/загрузить из файла
RD>Вытащить информацию о типе/методе из делегата или expression — это возможно. RD>Представить ее в каком-то строковом виде — тоже возможно. RD>Превратить строковый вид обратно в делегат или expression — в общем случае нет, т.к для не-статических вызовов нужен будет экземпляр объекта.
а если я делаю List.Add(() => { ... }); то тоже будут проблемы с "Превратить строковый вид обратно в делегат"
Здравствуйте, vaa, Вы писали:
VVV>>да просто много одинаковых делегатов инициализированных лямбда выражениями в списке и надо бы этот порядок сахранить/загрузить из файла vaa>это называется конфигурация. создаете словарик [имя функции -> лямбда]. в файл сохраняете порядок имен, при запуске программы достаете из словарика нужную лямбду.
не ну это понятно но крайне неудобно для меня ... VVV>>а если я делаю List.Add(() => { ... }); то тоже будут проблемы с "Превратить строковый вид обратно в делегат" vaa>Cкорее всего вам это не нужно. Или более детально опишите задачу.
Писал свой парсер — и на каждое правило задавалось лямбда для объединения в не терминал (в общем само условие дерево и задавить идентификатор под каждую лямбду неохота)... захотелось сохранить таблицуы в файл (долго генерируется при старте)
Здравствуйте, VVVa, Вы писали:
VVV>Можно ли как нибудь функцию (или ссылку на неё) превратить в строку и обратно? VVV>Можно ли это делать если функция задавалась лямбда выражением?