Compartilhar via


Tipos anuláveis estruturados (Entity SQL)

Uma instância de null de um tipo estruturada é uma instância que não existe. Isso é diferente de uma instância existente em que todas as propriedades têm valores de null .

Este tópico descreve os tipos estruturados anulável, incluindo que os tipos são anulável e que os padrões de código gerenciar instâncias de null de tipos anuláveis estruturados.

Tipos de tipos estruturados anulável

Existem três tipos de tipos anuláveis de framework:

  • Tipos de linha.

  • Tipos complexos.

  • Tipos de entidade.

Os padrões de código que gerenciar instâncias nulos Structured tipo

Os seguintes cenários gerenciar instâncias de null :

  • Na forma null como um tipo estruturada:

    TREAT (NULL AS StructuredType)  
    
  • Upcasting de um tipo base para um tipo derivado:

    TREAT (BaseType AS DerivedType)  
    
  • Externo join à condição falsa:

    Collection1 LEFT OUTER JOIN Collection2  
    ON FalseCondition  
    

    --ou

    Collection1 RIGHT OUTER JOIN Collection2  
    ON FalseCondition  
    

    --ou

    Collection1 FULL OUTER JOIN Collection2  
    ON FalseCondition  
    
  • Desreferenciando uma referência de null :

    DEREF(NullRef)  
    
  • Obtendo ANYELEMENT de uma coleção vazia:

    ANYELEMENT(EmptyCollection)  
    
  • Verificar instâncias de null de tipos estruturados:

    ...  
    for (int i = 0; i < reader.FieldCount; i++)  
    {  
        if (reader.IsDBNull(i))  
        {  
            Console.WriteLine("[NULL]");  
        }  
        else  
        {  
            Console.WriteLine(reader.GetValue(i).ToString());  
        }  
    }  
    

Confira também