Partager via


Fonctions canoniques (Entity SQL)

Cette section décrit les fonctions canoniques qui sont prises en charge par tous les fournisseurs de données et qui peuvent être utilisée par toutes les technologies de requête. Les fonctions canoniques ne peuvent pas être étendues par un fournisseur.

Ces fonctions canoniques seront traduites en fonctionnalités de source de données correspondantes pour le fournisseur. De ce fait, les appels de fonction peuvent être exprimés sous une forme commune dans toutes les sources de données.

Ces fonctions canoniques étant indépendantes des sources de données, les types d'arguments et de retour des fonctions canoniques sont définis par rapport aux types du modèle EDM (Modèle de données d'entité). Toutefois, il est possible que certaines sources de données ne puissent pas prendre en charge tous les types du modèle EDM.

Lorsque des fonctions canoniques sont utilisées dans une requête Entité SQL, la fonction appropriée est appelée au niveau de la source de données.

Le comportement en cas d'entrée null et les conditions d'erreurs sont explicitement spécifiées pour toutes les fonctions canoniques. Les fournisseurs de magasins doivent respecter ce comportement, mais Entity Framework ne l'applique pas de force.

Dans le cas des scénarios LINQ, les requêtes exécutées sur Entity Framework impliquent un mappage entre les méthodes CLR et les méthodes de la source de données sous-jacente. Les méthodes CLR sont mappées aux fonctions canoniques, ce qui garantit qu'un ensemble spécifique de méthodes sera correctement mappé, quelle que soit la source de données.

Espace de noms des fonctions canoniques

L'espace de noms des fonctions canoniques est Edm. L'espace de noms Edm est automatiquement inclus dans toutes les requêtes. Toutefois, si un autre espace de noms est importé et que celui-ci contient une fonction de même nom qu'une fonction canonique (dans l'espace de noms Edm), vous devez spécifier l'espace de noms.

Dans cette section

  • Autres fonctions canoniques [Entity SQL]
    Décrit les fonctions qui ne sont pas considérées comme des fonctions au niveau du bit, des fonctions de date/heure, des fonctions de chaîne, des fonctions mathématiques ou encore des fonctions d'agrégation.

Voir aussi

Concepts

Vue d'ensemble d'Entity SQL
Référence Entity SQL
Mappage de fonctions canoniques EDM à des fonctions SQL Server