System.Linq.Expressions Namespace
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Contém classes, interfaces e enumerações que permitem que expressões de código no nível da linguagem sejam representadas como objetos na forma de árvores de expressão.
Classes
| Nome | Description |
|---|---|
| BinaryExpression |
Representa uma expressão que tem um operador binário. |
| BlockExpression |
Representa um bloco que contém uma sequência de expressões em que as variáveis podem ser definidas. |
| CatchBlock |
Representa uma instrução catch em um bloco try. |
| ConditionalExpression |
Representa uma expressão que tem um operador condicional. |
| ConstantExpression |
Representa uma expressão que tem um valor constante. |
| DebugInfoExpression |
Emite ou limpa um ponto de sequência para obter informações de depuração. Isso permite que o depurador realce o código-fonte correto ao depurar. |
| DefaultExpression |
Representa o valor padrão de um tipo ou uma expressão vazia. |
| DynamicExpression |
Representa uma operação dinâmica. |
| DynamicExpressionVisitor |
Representa um visitante ou regravador para árvores de expressão dinâmica. |
| ElementInit |
Representa um inicializador para um único elemento de uma IEnumerable coleção. |
| Expression |
Fornece a classe base da qual as classes que representam nós de árvore de expressão são derivadas. Ele também contém |
| Expression<TDelegate> |
Representa uma expressão lambda fortemente tipada como uma estrutura de dados na forma de uma árvore de expressão. Essa classe não pode ser herdada. |
| ExpressionVisitor |
Representa um visitante ou reescrita para árvores de expressão. |
| GotoExpression |
Representa um salto incondicional. Isso inclui instruções de retorno, instruções break e continue e outros saltos. |
| IndexExpression |
Representa a indexação de uma propriedade ou matriz. |
| InvocationExpression |
Representa uma expressão que aplica uma expressão delegada ou lambda a uma lista de expressões de argumento. |
| LabelExpression |
Representa um rótulo, que pode ser colocado em qualquer Expression contexto. Se ele for saltado, ele obterá o valor fornecido pelo correspondente GotoExpression. Caso contrário, ele receberá o valor em DefaultValue. Se o valor for igual a Type System.Void, nenhum valor deverá ser fornecido. |
| LabelTarget |
Usado para representar o destino de um GotoExpression. |
| LambdaExpression |
Descreve uma expressão lambda. Isso captura um bloco de código semelhante a um corpo do método .NET. |
| ListInitExpression |
Representa uma chamada de construtor que tem um inicializador de coleção. |
| LoopExpression |
Representa um loop infinito. Pode ser encerrado com "break". |
| MemberAssignment |
Representa a operação de atribuição para um campo ou propriedade de um objeto. |
| MemberBinding |
Fornece a classe base da qual as classes que representam associações usadas para inicializar membros de um objeto recém-criado derivam. |
| MemberExpression |
Representa o acesso a um campo ou propriedade. |
| MemberInitExpression |
Representa chamar um construtor e inicializar um ou mais membros do novo objeto. |
| MemberListBinding |
Representa a inicialização dos elementos de um membro de coleção de um objeto recém-criado. |
| MemberMemberBinding |
Representa a inicialização de membros de um membro de um objeto recém-criado. |
| MethodCallExpression |
Representa uma chamada para um método estático ou de instância. |
| NewArrayExpression |
Representa a criação de uma nova matriz e possivelmente a inicialização dos elementos da nova matriz. |
| NewExpression |
Representa uma chamada de construtor. |
| ParameterExpression |
Representa uma expressão de parâmetro nomeada. |
| RuntimeVariablesExpression |
Uma expressão que fornece permissão de leitura/gravação de runtime para variáveis. |
| SwitchCase |
Representa um caso de um SwitchExpression. |
| SwitchExpression |
Representa uma expressão de controle que manipula várias seleções passando o controle para SwitchCase. |
| SymbolDocumentInfo |
Armazena informações necessárias para emitir informações de símbolo de depuração para um arquivo de origem, em particular o nome do arquivo e o identificador de idioma exclusivo. |
| TryExpression |
Representa um bloco try/catch/finally/fault. |
| TypeBinaryExpression |
Representa uma operação entre uma expressão e um tipo. |
| UnaryExpression |
Representa uma expressão que tem um operador unário. |
Interfaces
| Nome | Description |
|---|---|
| IArgumentProvider |
Fornece uma interface interna para acessar os argumentos de vários nós de árvore (DynamicExpression, ElementInit, MethodCallExpression, InvocationExpression, NewExpression e IndexExpression). Essa API é apenas para uso interno. |
| IDynamicExpression |
Fornece uma interface interna para acessar os argumentos de nós de árvore DynamicExpression, bem como a funcionalidade CallSite e Rewriting. Você não deve usar essa API. Ele só é público devido à refatoração de DLL e existe apenas para otimizações de desempenho internas. |
Enumerações
| Nome | Description |
|---|---|
| ExpressionType |
Descreve os tipos de nó para os nós de uma árvore de expressão. |
| GotoExpressionKind |
Especifica que tipo de salto esse GotoExpression representa. |
| MemberBindingType |
Descreve os tipos de associação usados em objetos MemberInitExpression. |
Comentários
A classe Expression abstrata fornece a raiz de uma hierarquia de classe usada para modelar árvores de expressão.
As classes nesse namespace que derivam de Expression, por exemplo MemberExpression e ParameterExpression, são usadas para representar nós em uma árvore de expressão. A classe Expression contém métodos de fábrica static (Shared em Visual Basic) para criar nós de árvore de expressão dos vários tipos.
O tipo ExpressionType de enumeração especifica os tipos de nó exclusivos.
Confira também
- Árvores de Expressão (C#)
- Árvores de Expressão (Visual Basic)