Что может сделать максимальное деревья выражений LINQ?

StackOverflow https://stackoverflow.com/questions/1430738

Вопрос

Какое максимальное значение может дать дерево выражений LINQ?

Может ли он определить класс? Как насчет метода со всеми объявленными именем, модификаторами, типом параметра и типом возврата?

Должна ли программа всегда определять дерево самостоятельно? Можно ли сгенерировать дерево из данного файла C #?

Где я могу получить ресурсы, чтобы узнать, как писать базовые сведения для продвинутых Expression Tree и Expression Tree Visitor? (статьи и видео будут отличными)

Спасибо тем, кто может помочь ...

Это было полезно?

Решение

В C # 3 деревья выражений могут представлять выражения . Отсюда и название. Кроме того, они ограничены подмножеством выражений C # - без выражений присваивания, без выражений с типами указателей и т. Д.

В библиотеках, которые будут поставляться с C # 4, мы расширили дерево выражений library , чтобы также поддерживать деревья операторов. Однако C # 4 НЕ будет автоматически переводить лямбда-оператор в «дерево операторов».

Это очевидная и полезная функция, к которой у нас просто не было времени добраться до C # 4. Мы рассмотрим ее для гипотетических будущих версий. Если у вас действительно отличный пользовательский сценарий для деревьев выписок, я бы хотел услышать его.

Очевидное дальнейшее расширение всего, что является деревьями объявлений, которые будут представлять объявления классов, объявления структур и так далее. Было бы здорово иметь полную гомо-звательность между языком C # и библиотекой дерева выражений. Это позволило бы все виды интересных сценариев метапрограммирования. Но это не произойдет в ближайшее время, так что не надейтесь. Это скорее моя давняя мечта, которая может никогда не осуществиться.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top