Élément Function (CSDL)
L'élément Function dans le langage CSDL (Conceptual Schema Definition Language) permet de définir ou déclarer des fonctions dans le modèle conceptuel. Une fonction est définie à l'aide d'un élément DefiningExpression. Pour plus d'informations, consultez How to: Define Custom Functions in the Conceptual Model.
Un élément Function peut avoir les éléments enfants suivants (dans l'ordre répertorié) :
Documentation (zéro ou un élément) ;
Parameter (zéro, un ou plusieurs éléments) ;
DefiningExpression (zéro ou un élément) ;
ReturnType (zéro ou un élément) ;
éléments d'annotation (zéro, un ou plusieurs éléments).
Un type de retour pour une fonction doit être spécifié avec l'élément ReturnType ou l'attribut ReturnType (voir ci-dessous), mais pas avec les deux. Les types de retour possibles correspondent à tout type EdmSimpleType, type d'entité, type complexe, type de ligne ou type REF (ou à une collection de l'un de ces types). Pour plus d'informations, consultez Types de modèle conceptuel.
Attributs applicables
Le tableau ci-dessous décrit les attributs qui peuvent s'appliquer à l'élément Function.
Nom d'attribut | Requis | Valeur |
---|---|---|
Name |
Oui |
Nom de la fonction. |
ReturnType |
Non |
Type retourné par la fonction. |
Remarque : |
---|
Un nombre quelconque d'attributs d'annotation (attributs XML personnalisés) peut être appliqué à l'élément Function.Toutefois, les attributs personnalisés ne peuvent pas appartenir à un espace de noms XML réservé pour le langage CSDL.Les noms qualifiés complets de deux attributs personnalisés quelconques ne peuvent pas être identiques. |
Exemple
L'exemple ci-dessous utilise un élément Function pour définir une fonction qui retourne le nombre d'années écoulées depuis l'embauche d'un enseignant.
<Function Name="YearsSince" ReturnType="Edm.Int32">
<Parameter Name="date" Type="Edm.DateTime" />
<DefiningExpression>
Year(CurrentDateTime()) - Year(date)
</DefiningExpression>
</Function>
Voir aussi
Concepts
Vue d'ensemble d'Entity Framework
Spécification CSDL
Élément FunctionImport (CSDL)
Autres ressources
Spécifications CSDL, SSDL et MSL
ADO.NET Entity Data Model Tools
model-defined function (Entity Data Model)