Condividi tramite


funzione definita dal modello (Entity Data Model)

Una funzione definita dal modello è una funzione che è definita in un modello concettuale. Il corpo di una funzione definita dal modello viene espresso in Entity SQL che consente di esprimere la funzione indipendentemente dalle regole o dai linguaggi supportati nell'origine dati.

Una definizione per una funzione definita dal modello contiene le informazioni seguenti:

  • Un nome di funzione (obbligatorio).

  • Il tipo del valore restituito (facoltativo).

    Ee382833.note(it-it,VS.100).gifNota:
    Se non viene specificato alcun tipo restituito, il valore restituito sarà void.

  • Informazioni sui parametri (facoltative).

  • Un'espressione Entity SQL che definisce il corpo della funzione.

Si noti che le funzioni definite dal modello non supportano parametri di output. Questa restrizione esiste perché possano essere create funzioni definite dal modello.

Esempio

Nel diagramma seguente viene illustrato un modello concettuale con tre tipi di entità: Book, Publisher e Author.

Modello con data pubblicata

ADO.NET Entity Framework utilizza un linguaggio specifico di dominio detto CSDL (Conceptual Schema Definition Language) per definire i modelli concettuali. Nel seguente linguaggio CSDL viene definita una funzione nel modello concettuale che restituisce i numeri di anni da quando è stata pubblicata un'istanza di un Book (nel diagramma precedente).

<Function Name="GetYearsInPrint" ReturnType="Edm.Int32" >
      <Parameter Name="book" Type="BooksModel.Book" />
      <DefiningExpression>
        Year(CurrentDateTime()) - Year(cast(book.PublishedDate as DateTime))
      </DefiningExpression>
    </Function>

Vedere anche

Concetti

Concetti chiave di Entity Data Model
Entity Data Model
Entity Data Model: tipi di dati primitivi