É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 Procédure : définir des fonctions personnalisées dans le modèle conceptuel.
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èles conceptuels (CSDL).
Attributs applicables
Le tableau ci-dessous décrit les attributs qui peuvent s'appliquer à l'élément Function.
Nom d'attribut |
Requis |
Value |
---|---|---|
Name |
Oui |
Nom de la fonction. |
ReturnType |
Non |
Type retourné par la fonction. |
Notes
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="YearsSinceNow" ReturnType="Edm.Int32">
<Parameter Name="date" Type="Edm.DateTime" />
<DefiningExpression>
Year(CurrentDateTime()) - Year(date)
</DefiningExpression>
</Function>
<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