System.Linq.Expressions Espaço de Nomes
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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 |
| 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.