Compartilhar via


DEREF (Entity SQL)

Desreferencia um valor de referência e gera o resultado dessa desreferência.

Sintaxe

SELECT DEREF ( o.expression ) FROM Table AS o;

Argumentos

expression Qualquer expressão de consulta válida que retorna uma coleção.

Valor Retornado

O valor de entidade que é referenciada.

Comentários

O operador de DEREF desreferencia um valor de referência e gerencia o resultado do desreferencia. Por exemplo, se r for uma referência do tipo ref<T>, Deref(r) é uma expressão do tipo T que produz a entidade referenciada por r. Se o valor de referência é zero, ou está oscilando (isto é, o destino de referência não existir), o resultado do operador de DEREF é nulo.

Exemplo

A consulta do Entity SQL a seguir usa o operador DEREF para desreferenciar um valor de referência e para gerar o resultado da desreferência. A consulta é baseada no modelo de vendas AdventureWorks. Para compilar e executar essa consulta, siga estas etapas:

  1. Siga o procedimento em Como executar uma consulta que retorna resultados de PrimitiveType.

  2. Passe a seguinte consulta como um argumento para o método de ExecutePrimitiveTypeQuery:

SELECT VALUE DEREF(REF(p)).Name 
FROM AdventureWorksEntities.Products AS p

Confira também