System.Linq.Expressions Espaço de Nomes

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

Classes

Name 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 onde variáveis podem ser definidas.

CatchBlock

Representa uma instrução de captura num 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 informação de depuração. Isto permite que o depurador destaque o código-fonte correto ao depurar.

DefaultExpression

Representa o valor padrão de um tipo ou de uma expressão vazia.

DynamicExpression

Representa uma operação dinâmica.

DynamicExpressionVisitor

Representa um visitante ou reescritor para árvores dinâmicas de expressão.

ElementInit

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

Expression

Fornece a classe base a partir da qual as classes que representam os nós da árvore de expressões são derivadas. Contém também métodos de fábrica static (Shared em Visual Basic) para criar os vários tipos de nós. Isto é uma abstract aula.

Expression<TDelegate>

Representa uma expressão lambda fortemente tipada como uma estrutura de dados na forma de uma árvore de expressões. Esta classe não pode ser herdada.

ExpressionVisitor

Representa um visitante ou reescritor para árvores de expressão.

GotoExpression

Representa um salto incondicional. Isto inclui extratos de retorno, extratos de interrupção e continuação, e outros saltos.

IndexExpression

Representa a indexação de uma propriedade ou array.

InvocationExpression

Representa uma expressão que aplica uma expressão delegada ou lambda a uma lista de expressões argumentais.

LabelExpression

Representa um rótulo, que pode ser colocado em qualquer Expression contexto. Se for saltado para, obterá o valor fornecido pelo correspondente GotoExpression. Caso contrário, recebe o valor em DefaultValue. Se for Type igual a System.Null, não deve ser fornecido valor.

LabelTarget

Usado para representar o alvo de um GotoExpression.

LambdaExpression

Descreve uma expressão lambda. Isto captura um bloco de código semelhante ao corpo de um método .NET.

ListInitExpression

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

LoopExpression

Representa um ciclo 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 a partir da qual derivam as classes que representam ligações usadas para inicializar membros de um objeto recém-criado.

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 dos membros de um elemento de um objeto recém-criado.

MethodCallExpression

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

NewArrayExpression

Representa a criação de um novo array e possivelmente a inicialização dos elementos do novo array.

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/escrita em tempo de execução para variáveis.

SwitchCase

Representa um caso de um SwitchExpression.

SwitchExpression

Representa uma expressão de controlo que lida com múltiplas seleções ao passar o controlo para SwitchCase.

SymbolDocumentInfo

Armazena a informação necessária para emitir a informação do símbolo de depuração para um ficheiro de origem, em particular o nome do ficheiro e o identificador único da língua.

TryExpression

Representa um bloqueio de tentativa/receção/final/bloqueio de faltas.

TypeBinaryExpression

Representa uma operação entre uma expressão e um tipo.

UnaryExpression

Representa uma expressão que possui um operador unário.

Interfaces

Name Description
IArgumentProvider

Fornece uma interface interna para aceder aos argumentos de múltiplos nós de árvore (DynamicExpression, ElementInit, MethodCallExpression, InvocationExpression, NewExpression e IndexExpression). Esta API é apenas para uso interno.

IDynamicExpression

Fornece uma interface interna para aceder aos argumentos dos nós da árvore DynamicExpression, bem como funcionalidades CallSite e Rewriting. Não deve usar esta API. Só é pública devido à refatoração de DLLs e existe apenas para otimizações internas de desempenho.

Enumerações

Name Description
ExpressionType

Descreve os tipos de nós para os nós de uma árvore de expressões.

GotoExpressionKind

Especifica que tipo de salto isto GotoExpression representa.

MemberBindingType

Descreve os tipos de ligação que são usados nos MemberInitExpression objetos.

Observações

A classe Expression abstrata fornece a raiz de uma hierarquia de classes usada para modelar árvores de expressão.

As classes neste espaço de nomes que derivam de Expression, por exemplo MemberExpression e ParameterExpression, são usadas para representar nós numa árvore de expressões. 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 únicos de nós.

Ver também