El espacio de nombres System.Linq.Expressions contiene las clases, interfaces y enumeraciones que permiten representar expresiones de código del nivel de lenguaje como objetos en forma de árboles de expresión.
La clase abstracta Expression proporciona la raíz de una jerarquía de clases utilizada para modelar los árboles de expresión.
Las clases de este espacio de nombres que derivan de Expression, por ejemplo MemberExpression y ParameterExpression, se utilizan para representar los nodos en un árbol de expresión. La clase Expression contiene métodos de generador static (Shared en Visual Basic) para crear nodos del árbol de expresión de los varios tipos.
El tipo de enumeración ExpressionType especifica los tipos de nodo únicos.
| Clase | Descripción | |
|---|---|---|
|
BinaryExpression | Representa una expresión que tiene un operador binario. |
|
BlockExpression | Representa un bloque que contiene una secuencia de expresiones donde se pueden definir variables. |
|
CatchBlock | Representa una instrucción catch en un bloque try. |
|
ConditionalExpression | Representa una expresión que tiene un operador condicional. |
|
ConstantExpression | Representa una expresión que tiene un valor constante. |
|
DebugInfoExpression | Emite o borra un punto de secuencia para obtener información de depuración. Esto permite al depurador resaltar el código fuente correcto al depurar. |
|
DefaultExpression | Representa el valor predeterminado de un tipo o una expresión vacía. |
|
DynamicExpression | Representa una operación dinámica. |
|
ElementInit | Representa un inicializador para un elemento único de una colección IEnumerable. |
|
Expression | Proporciona la clase base de la que se derivan las clases que representan los nodos de árbol de expresión. También contiene métodos de generador static (Shared en Visual Basic) para crear los diversos tipos de nodo. Ésta es una clase abstract. |
|
Expression<TDelegate> | Representa una expresión lambda con establecimiento inflexible de tipos como una estructura de datos en el formato de árbol de expresión. Esta clase no puede heredarse. |
|
ExpressionVisitor | Representa un visitante o un objeto de reescritura de árboles de expresión. |
|
GotoExpression | Representa un salto incondicional. Esto incluye instrucciones return, break y continue, y otros saltos. |
|
IndexExpression | Representa la indización de una propiedad o una matriz. |
|
InvocationExpression | Representa una expresión que aplica un delegado o una expresión lambda a una lista de expresiones de argumento. |
|
LabelExpression | Representa una etiqueta, que se puede colocar en cualquier contexto de Expression. Si se salta a ella, obtendrá el valor proporcionado por la clase GotoExpression correspondiente. De lo contrario, recibe el valor de DefaultValue. Si Type es igual a System.Void, no se debe proporcionar ningún valor. |
|
LabelTarget | Se utiliza para representar el destino de una clase GotoExpression. |
|
LambdaExpression | Describe una expresión lambda. Captura un bloque de código similar a un cuerpo de método de .NET. |
|
ListInitExpression | Representa una llamada a un constructor que tiene un inicializador de colección. |
|
LoopExpression | Representa un bucle infinito. Se puede salir del mismo con "break". |
|
MemberAssignment | Representa la operación de asignación de un campo o propiedad de un objeto. |
|
MemberBinding | Proporciona la clase base de la que derivan las clases que representan enlaces que se utilizan para inicializar miembros de un objeto recientemente creado. |
|
MemberExpression | Representa el acceso a un campo o propiedad. |
|
MemberInitExpression | Representa la llamada a un constructor y la inicialización de uno o más miembros del nuevo objeto. |
|
MemberListBinding | Representa la inicialización de los elementos de un miembro de colección de un objeto que se acaba de crear. |
|
MemberMemberBinding | Representa la inicialización de los miembros de un miembro de un objeto que se acaba de crear. |
|
MethodCallExpression | Representa una llamada a un método estático o un método de instancia. |
|
NewArrayExpression | Representa creando una nueva matriz y posiblemente inicializando los elementos de la nueva matriz. |
|
NewExpression | Representa una llamada de constructor. |
|
ParameterExpression | Representa una expresión de parámetro con nombre. |
|
RuntimeVariablesExpression | Expresión que proporciona permiso de lectura y escritura en tiempo de ejecución para variables. |
|
SwitchCase | Representa un caso de una clase SwitchExpression. |
|
SwitchExpression | Representa una expresión de control que administra varias selecciones pasando el control a SwitchCase. |
|
SymbolDocumentInfo | Almacena información necesaria para emitir información de símbolos de depuración para un archivo de código fuente, en particular el nombre de archivo y el identificador de idioma único. |
|
TryExpression | Representa un bloque try/catch/finally/de errores. |
|
TypeBinaryExpression | Representa una operación entre una expresión y un tipo. |
|
UnaryExpression | Representa una expresión que tiene un operador unario. |
| Enumeración | Descripción | |
|---|---|---|
|
ExpressionType | Describe los tipos de nodo para los nodos de un árbol de expresión. |
|
GotoExpressionKind | Especifica qué tipo de salto representa esta clase GotoExpression. |
|
MemberBindingType | Describe los tipos de enlace que se utilizan en objetos MemberInitExpression. |