Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Constrói registros anônimos, de tipo estrutural de um ou mais valores.
Sintaxe
ROW ( expression [ AS alias ] [,...] )
Argumentos
expression Qualquer expressão de consulta válida que retorna um valor a ser construído em um tipo de linha.
alias Especifica um alias para o valor especificado em um tipo de linha. Se um alias não for fornecido, o SQL da Entidade tentará gerar um alias com base nas regras de geração de alias do SQL da entidade.
Valor de retorno
Um tipo de linha.
Observações
Você usa construtores de linha no SQL da Entidade para construir registros anônimos, digitado estruturalmente a partir de um ou mais valores. O tipo de resultado de um construtor de linha é um tipo de linha cujos tipos de campo correspondem aos tipos dos valores que foram usados para construir a linha. Por exemplo, a expressão a seguir constrói um valor do tipo Record(a int, b string, c int).
ROW(1 AS a, "abc" AS b, a+34 AS c)
Se você não fornecer um alias para uma expressão em um construtor de linhas, o Entity Framework tentará gerar um. Para obter mais informações, consulte a seção "Regras de aliasing" do tópico Identificadores .
As regras a seguir se aplicam ao aliasing de expressão em um construtor de linhas:
Expressões em um construtor de linha não podem se referir a outros aliases no mesmo construtor.
Duas expressões no mesmo construtor de linha não podem ter o mesmo alias.
Para obter mais informações sobre construtores de consulta, consulte Constructing Types.
Exemplo
A consulta SQL de entidade a seguir usa o operador ROW para construir registros anônimos e de tipo estrutural. A consulta é baseada no Modelo de Vendas adventureworks. Para compilar e executar essa consulta, siga estas etapas:
Siga o procedimento em How to: Execute a Query that Returns StructuralType Results.
Passe a consulta a seguir como um argumento para o
ExecuteStructuralTypeQuerymétodo:
SELECT VALUE ROW (product.ProductID AS ProductID,
product.Name AS ProductName) FROM AdventureWorksEntities.Products
AS product