System.Linq.Expressions Espacio de nombres
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.
Clases
BinaryExpression |
Representa una expresión que tiene un operador binario. |
BlockExpression |
Representa un bloque que contiene una secuencia de expresiones en la que se pueden definir variables. |
CatchBlock |
Representa una instrucción catch de 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 que el depurador resalte 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. |
DynamicExpressionVisitor |
Representa un visitante o un sistema de reescritura para los árboles de expresión dinámica. |
ElementInit |
Representa un inicializador para un solo elemento 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 |
Expression<TDelegate> |
Representa una expresión lambda fuertemente tipada como una estructura de datos con el formato de un árbol de expresión. Esta clase no puede heredarse. |
ExpressionVisitor |
Representa un visitante o un sistema de reescritura para los árboles de expresión. |
GotoExpression |
Representa un salto incondicional. Esto incluye instrucciones return, instrucciones 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. NET. |
ListInitExpression |
Representa una llamada de constructor que tiene un inicializador de colección. |
LoopExpression |
Representa un bucle infinito. Puede terminar con "break". |
MemberAssignment |
Representa la operación de asignación de un campo o una propiedad de un objeto. |
MemberBinding |
Proporciona la clase base de la que se derivan las clases que representan los enlaces usados para inicializar los miembros de un objeto recién creado. |
MemberExpression |
Representa el acceso a un campo o una propiedad. |
MemberInitExpression |
Representa la llamada a un constructor y la inicialización de uno o más miembros del objeto nuevo. |
MemberListBinding |
Representa la inicialización de los elementos de un miembro de la colección de un objeto recién creado. |
MemberMemberBinding |
Representa la inicialización de los miembros de un miembro del objeto recién creado. |
MethodCallExpression |
Representa una llamada a un método estático o de instancia. |
NewArrayExpression |
Representa la creación de una nueva matriz y la posible inicialización de sus elementos. |
NewExpression |
Representa una llamada al 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 la información necesaria para emitir información de símbolos de depuración para un archivo de origen, en particular, el nombre de archivo y el identificador de idioma único. |
TryExpression |
Representa un bloque try/catch/finally/fault. |
TypeBinaryExpression |
Representa una operación entre una expresión y un tipo. |
UnaryExpression |
Representa una expresión que tiene un operador unario. |
Interfaces
IArgumentProvider |
Proporciona una interfaz interna para acceder a los argumentos de varios nodos de árbol (DynamicExpression, ElementInit, MethodCallExpression, InvocationExpression, NewExpression e IndexExpression). Esta API es solo para uso interno. |
IDynamicExpression |
Proporciona una interfaz interna para acceder a los argumentos de los nodos del árbol de DynamicExpression, así como a la funcionalidad de sitio de llamada y reescritura. Esta API no debe usarse. Solo es pública debido a la refactorización de la DLL, y existe únicamente para optimizaciones de rendimiento interno. |
Enumeraciones
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. |
Comentarios
La clase Expression abstracta proporciona la raíz de una jerarquía de clases utilizada para modelar árboles de expresión.
Las clases de este espacio de nombres que derivan de , por ejemplo, y , se usan Expression para representar nodos en un árbol de MemberExpression ParameterExpression expresión. La Expression clase contiene ( en static
Shared
Visual Basic) métodos de generador para crear nodos de árbol de expresión de los distintos tipos.
El tipo de ExpressionType enumeración especifica los tipos de nodo únicos.