System.Linq.Expressions Namespace

Contém classes, interfaces e enumerações que permitem que as expressões de código no nível de linguagem sejam representadas como objetos na forma de árvores de expressão.

Classes

BinaryExpression

Representa uma expressão com um operador binário.

BlockExpression

Representa um bloco que contém uma sequência de expressões em que variáveis podem ser definidas.

CatchBlock

Representa uma instrução catch em um bloco try.

ConditionalExpression

Representa uma expressão com um operador condicional.

ConstantExpression

Representa uma expressão que tem um valor constante.

DebugInfoExpression

Emite ou limpa um ponto de sequência para informações de depuração. Isso permite que o depurador realce o código-fonte correto durante a depuração.

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 de árvores de expressão dinâmica.

ElementInit

Representa um inicializador para um único elemento de uma coleção IEnumerable.

Expression

Fornece a classe base da qual são derivadas as classes que representam nós de árvore de expressão. Também contém métodos de fábrica static (Shared no Visual Basic) para criar os diferentes tipos de nós. Esta é uma classe abstract.

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 regravador para árvores de expressão.

GotoExpression

Representa um salto incondicional. Isso inclui o instruções de retorno, interrupção e continuação, entre outros saltos.

IndexExpression

Representa uma propriedade ou uma matriz de indexação.

InvocationExpression

Representa uma expressão que se aplica a um delegado ou a expressão lambda para uma lista de expressões de argumento.

LabelExpression

Representa um rótulo, que pode ser colocado em qualquer contexto Expression. Se for o destino do salto, ele receberá o valor fornecido pela GotoExpression correspondente. Caso contrário, ele receberá o valor em DefaultValue. Se Type for igual a 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 de método do .NET.

ListInitExpression

Representa uma chamada de construtor com um inicializador de coleção.

LoopExpression

Representa um loop infinito. Pode ser encerrado com "quebra".

MemberAssignment

Representa a operação de atribuição para um campo ou propriedade de um objeto.

MemberBinding

Fornece a classe base da qual derivam as classes que representam as associações que são usadas para inicializar os membros de derivação de um objeto recém-criado.

MemberExpression

Representa o acesso a um campo ou propriedade.

MemberInitExpression

Representa a chamada de um construtor e a inicialização de um ou mais membros do novo objeto.

MemberListBinding

Representa os elementos de inicialização de um membro da coleção de um objeto recém-criado.

MemberMemberBinding

Representa os membros de inicialização de um membro de um objeto recém-criado.

MethodCallExpression

Representa uma chamada para um método estático ou uma instância.

NewArrayExpression

Representa a criação de uma nova matriz e possível 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ões de leitura/gravação em runtime para variáveis.

SwitchCase

Representa uma ocorrência de um SwitchExpression.

SwitchExpression

Representa uma expressão de controle que trata de várias seleções passando o controle para SwitchCase.

SymbolDocumentInfo

Armazena as informações necessárias para emitir informações de símbolo de depuração para um arquivo de origem, especificamente o nome do arquivo e o identificador de linguagem 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 com um operador unário.

Interfaces

IArgumentProvider

Fornece uma interface interna para acessar os argumentos de vários nós de árvore (DynamicExpression, ElementInit, MethodCallExpression, InvocationExpression, NewExpression e IndexExpression). Esta API é somente para uso interno.

IDynamicExpression

Fornece uma interface interna para acessar os argumentos de nós de árvore DynamicExpression, bem como funcionalidades de CallSite e de regravação. Você não deve usar essa API. Ela só é pública devido à refatoração de DLL e existe somente para otimizações de desempenho internas.

Enumerações

ExpressionType

Descreve os tipos de nós para os nós de uma árvore de expressão.

GotoExpressionKind

Especifica qual tipo de link esta 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 derivadas de Expression, por exemplo MemberExpression , e ParameterExpression, são usadas para representar nós em uma árvore de expressão. A Expression classe contém static métodos de fábrica (Shared no 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