Condividi tramite


Funzioni canoniche (Entity SQL)

In questa sezione vengono illustrate le funzioni canoniche supportate da tutti i provider di dati e che possono essere utilizzate da tutte le tecnologie di query. Le funzioni canoniche non possono essere estese da un provider.

Queste funzioni canoniche vengono convertite nella funzionalità dell'origine dati corrispondente per il provider. In questo modo è possibile esprimere le chiamate alle funzioni con un formato comune per tutte le origini dati.

Poiché queste funzioni canoniche sono indipendenti dalle origini dati, i relativi tipi di argomento e tipi restituiti sono definiti in termini di tipi nel modello concettuale. Alcune origini dati potrebbero tuttavia non supportare tutti i tipi nel modello concettuale.

Quando si utilizzano funzioni canoniche in una query Entity SQL , la funzione appropriata viene chiamata nell'origine dati.

Per tutte le funzioni canoniche sono specificati in modo esplicito sia il comportamento in caso di input null che le condizioni di errore. I provider dell'archivio devono essere conformi a tale comportamento, ma questo comportamento non viene applicato da Entity Framework .

Per gli scenari LINQ, le query su Entity Framework comportano il mapping dei metodi CLR ai metodi nell'origine dati sottostante. I metodi CLR sono mappati alle funzioni canoniche, pertanto un set di metodi specifico può essere mappato correttamente indipendentemente dall'origine dati.

Spazio dei nomi delle funzioni canoniche

Lo spazio dei nomi per le funzioni canoniche è System.Data.Metadata.Edm. Lo spazio dei nomi System.Data.Metadata.Edm viene incluso automaticamente in tutte le query. Se tuttavia viene importato un altro spazio dei nomi contenente una funzione con lo stesso nome di una funzione canonica (nello spazio dei nomi System.Data.Metadata.Edm), è necessario specificare lo spazio dei nomi.

In questa sezione

Vedere anche

Concetti

Panoramica su Entity SQL
Riferimenti a Entity SQL
Mapping delle funzioni canoniche del modello concettuale alle funzioni SQL Server
Funzioni definite dall'utente (Entity SQL)