Деревья выражений в LINQ

Обновлен: Ноябрь 2007

Деревья выражений используются в LINQ для представления структурированных запросов к источникам данных, которые реализуют IQueryable<T>. Например, поставщик LINQ to SQL реализует интерфейс IQueryable<T> для запросов к реляционным хранилищам данных. Компиляторы C# и Visual Basic компилируют запросы к источникам данных в код, который строит дерево выражений во время выполнения. Поставщик запросов может пройти через структуру данных для дерева выражений и преобразовать ее в язык запросов, соответствующий для источника данных.

Деревья выражений также используются в LINQ для представления лямбда выражений, которые присваиваются переменным типа Expression<TDelegate>.

Деревья выражений можно также использовать для создания динамических запросов LINQ. Дополнительные сведения см. в разделе Практическое руководство. Использование деревьев выражений для построения динамических запросов. Кроме того, деревья выражений можно использовать при построении поставщика LINQ. Дополнительные сведения см. в разделе Пошаговое руководство. Создание поставщика IQueryable LINQ.

См. также

Задачи

Практическое руководство. Выполнение деревьев выражений

Практическое руководство. Изменение деревьев выражений

Основные понятия

Деревья выражений