System.Linq.Expressions Пространство имен
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Содержит классы, интерфейсы и перечисления, позволяющие представлять выражения кода на уровне языка как объекты в виде деревьев выражений.
Классы
| Имя | Описание |
|---|---|
| BinaryExpression |
Представляет выражение с двоичным оператором. |
| BlockExpression |
Представляет блок, содержащий последовательность выражений, где можно определить переменные. |
| CatchBlock |
Представляет инструкцию catch в блоке try. |
| ConditionalExpression |
Представляет выражение с условным оператором. |
| ConstantExpression |
Представляет выражение с константным значением. |
| DebugInfoExpression |
Выдает или очищает точку последовательности для отладочной информации. Это позволяет отладчику выделить правильный исходный код при отладке. |
| DefaultExpression |
Представляет значение по умолчанию типа или пустого выражения. |
| DynamicExpression |
Представляет динамическую операцию. |
| DynamicExpressionVisitor |
Представляет посетителя или перезапись для деревьев динамических выражений. |
| ElementInit |
Представляет инициализатор для одного элемента IEnumerable коллекции. |
| Expression |
Предоставляет базовый класс, из которого производные классы, представляющие узлы дерева выражений. Он также содержит |
| Expression<TDelegate> |
Представляет строго типизированное лямбда-выражение в виде структуры данных в виде дерева выражений. Этот класс не наследуется. |
| ExpressionVisitor |
Представляет посетителя или перезапись для деревьев выражений. |
| GotoExpression |
Представляет безусловный переход. К ним относятся операторы возврата, прерывание и продолжение инструкций и другие переходы. |
| IndexExpression |
Представляет индексирование свойства или массива. |
| InvocationExpression |
Представляет выражение, которое применяет делегат или лямбда-выражение к списку выражений аргументов. |
| LabelExpression |
Представляет метку, которую можно поместить в любой Expression контекст. Если он перепрыгнул, он получит значение, предоставленное соответствующим GotoExpression. В противном случае он получает значение в DefaultValue. Type Если значение равно System.Void, не должно быть указано. |
| LabelTarget |
Используется для представления целевого GotoExpressionобъекта. |
| LambdaExpression |
Описывает лямбда-выражение. Это фиксирует блок кода, аналогичный тексту метода .NET. |
| ListInitExpression |
Представляет вызов конструктора с инициализатором коллекции. |
| LoopExpression |
Представляет бесконечный цикл. Его можно выйти с помощью "перерыва". |
| MemberAssignment |
Представляет операцию назначения для поля или свойства объекта. |
| MemberBinding |
Предоставляет базовый класс, из которого классы, представляющие привязки, используемые для инициализации элементов только что созданного объекта. |
| MemberExpression |
Представляет доступ к полю или свойству. |
| MemberInitExpression |
Представляет вызов конструктора и инициализацию одного или нескольких элементов нового объекта. |
| MemberListBinding |
Представляет инициализацию элементов элемента коллекции только что созданного объекта. |
| MemberMemberBinding |
Представляет элементы инициализации элемента только что созданного объекта. |
| MethodCallExpression |
Представляет вызов статического или экземплярного метода. |
| NewArrayExpression |
Представляет создание нового массива и, возможно, инициализацию элементов нового массива. |
| NewExpression |
Представляет вызов конструктора. |
| ParameterExpression |
Представляет именованное выражение параметра. |
| RuntimeVariablesExpression |
Выражение, которое предоставляет разрешение на чтение и запись во время выполнения для переменных. |
| SwitchCase |
Представляет один случай SwitchExpression. |
| SwitchExpression |
Представляет выражение элемента управления, обрабатывающее несколько выделений, передав элемент управления SwitchCaseв . |
| SymbolDocumentInfo |
Хранит сведения, необходимые для отправки сведений о символах отладки для исходного файла, в частности имени файла и уникального идентификатора языка. |
| TryExpression |
Представляет блок try/catch/finally/fault. |
| TypeBinaryExpression |
Представляет операцию между выражением и типом. |
| UnaryExpression |
Представляет выражение с унарным оператором. |
Интерфейсы
| Имя | Описание |
|---|---|
| IArgumentProvider |
Предоставляет внутренний интерфейс для доступа к аргументам нескольких узлов дерева (DynamicExpression, ElementInit, MethodCallExpression, InvocationExpression, NewExpression и IndexExpression). Этот API предназначен только для внутреннего использования. |
| IDynamicExpression |
Предоставляет внутренний интерфейс для доступа к аргументам узлов дерева DynamicExpression, а также функций CallSite и перезаписи. Этот API не следует использовать. Она доступна только из-за рефакторинга библиотеки DLL и существует только для внутренних оптимизаций производительности. |
Перечисления
| Имя | Описание |
|---|---|
| ExpressionType |
Описывает типы узлов для узлов дерева выражений. |
| GotoExpressionKind |
Указывает, какой вид прыжка представляет этот GotoExpression. |
| MemberBindingType |
Описывает типы привязки, используемые в MemberInitExpression объектах. |
Комментарии
Абстрактный класс Expression предоставляет корень иерархии классов, используемой для моделирования деревьев выражений.
Классы в этом пространстве имен, производные от Expression, например MemberExpression , и ParameterExpressionиспользуются для представления узлов в дереве выражений. Класс Expression содержит методы фабрики static (Shared в Visual Basic) для создания узлов дерева выражений различных типов.
Тип ExpressionType перечисления указывает уникальные типы узлов.