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.
Determina se o tipo de uma expressão é do tipo especificado ou de um de seus subtipos.
Sintaxe
expression IS [ NOT ] OF ( [ ONLY ] type )
Argumentos
expression Qualquer expressão de consulta válida para determinar o tipo de.
NÃO nega o EDM. Resultado booliano de IS OF.
ONLY Especifica que IS OF retorna true somente se expression for do tipo type e não qualquer um de seus subtipos.
type O tipo no qual testar expression . O tipo deve ser qualificado para namespace.
Valor de retorno
true se expression for do tipo T e T for um tipo base ou um tipo derivado de type; nulo se expression for nulo em runtime; caso contrário, false.
Observações
As expressões expression IS NOT OF (type) e expression IS NOT OF (ONLY type) são sintaticamente equivalentes a NOT (expression IS OF (type)) e NOT (expression IS OF (ONLY type)), respectivamente.
A tabela a seguir mostra o comportamento do IS OF operador em alguns padrões típicos e de canto. Todas as exceções são geradas do lado do cliente antes que o provedor seja invocado:
| Padrão | Comportamento |
|---|---|
| IS OF nulo (EntityType) | Throws |
| IS OF nulo (ComplexType) | Throws |
| IS OF nulo (RowType) | Throws |
| TREAT (null AS EntityType) IS OF (EntityType) | Retorna DBNull |
| TREAT (null AS ComplexType) IS OF (ComplexType) | Throws |
| TREAT (null AS RowType) IS OF (RowType) | Throws |
| EntityType IS OF (EntityType) | Retorna true/false |
| ComplexType IS OF (ComplexType) | Throws |
| RowType IS OF (RowType) | Throws |
Exemplo
A consulta SQL de entidade a seguir usa o operador IS OF para determinar o tipo de expressão de consulta e, em seguida, usa o operador TREAT para converter um objeto do tipo Course em uma coleção de objetos do tipo OnsiteCourse. A consulta é baseada no modelo de escola.
[!code-sql[DP EntityServices Concepts#TREAT_ISOF]~/samples/snippets/tsql/VS_Snippets_Data/dp entityservices concepts/tsql/entitysql.sql#treat_isof)]