Élément Parameter (CSDL)
L'élément Parameter dans le langage CSDL (Conceptual Schema Definition Language) peut être un enfant de l'élément FunctionImport ou de l' élément Function.
Application de l'élément FunctionImport
Un élément Parameter (en tant qu'enfant de l'élément FunctionImport) est utilisé pour définir les paramètres d'entrée et de sortie pour les importations de fonction déclarées dans le langage CSDL.
L'élément Parameter peut avoir les éléments enfants suivants (dans l'ordre répertorié) :
Documentation (zéro ou un élément autorisé) ;
éléments d'annotation (zéro, un ou plusieurs éléments autorisés).
Attributs applicables
Le tableau ci-dessous décrit les attributs qui peuvent s'appliquer à l'élément Parameter.
Nom d'attribut | Requis | Valeur |
---|---|---|
Name |
Oui |
Nom du paramètre. |
Type |
Oui |
Type du paramètre. La valeur doit être un EDMSimpleType ou un type complexe figurant dans l'étendue du modèle. Pour plus d'informations, consultez Types de modèle conceptuel. |
Mode |
Non |
In, Out ou InOut selon que le paramètre est un paramètre d'entrée, de sortie ou d'entrée/sortie. |
MaxLength |
Non |
Longueur maximale autorisée du paramètre. |
Precision |
Non |
Précision du paramètre. |
Scale |
Non |
Échelle du paramètre. |
Remarque : |
---|
Un nombre quelconque d'attributs d'annotation (attributs XML personnalisés) peut être appliqué à l'élément Parameter.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 suivant illustre un élément FunctionImport avec un élément enfant Parameter unique. La fonction accepte un paramètre d'entrée et retourne une collection de types d'entités.
<FunctionImport Name="GetStudentGrades"
EntitySet="StudentGrade"
ReturnType="Collection(SchoolModel.StudentGrade)">
<Parameter Name="StudentID" Mode="In" Type="Int32" />
</FunctionImport>
Application de l'élément Function
Un élément Parameter (en tant qu'enfant de l'élément Function) définit les paramètres des fonctions qui sont définies ou déclarées dans un modèle conceptuel.
L'élément Parameter peut avoir les éléments enfants suivants (dans l'ordre répertorié) :
Documentation (zéro ou un élément) ;
CollectionType (zéro ou un élément) ;
ReferenceType (zéro ou un élément) ;
RowType (zéro ou un élément) ;
Remarque : |
---|
Un seul des éléments CollectionType, ReferenceType ou RowType peut être un élément enfant d'un élément Property. |
- éléments d'annotation (zéro, un ou plusieurs éléments autorisés).
Remarque : |
---|
Les éléments d'annotation doivent figurer après tous les autres éléments enfants.Les éléments d'annotation sont autorisés uniquement dans les modèles conceptuels pour les applications qui ciblent le .NET Framework version 4 ou ultérieure.L'espace de noms XML de tels modèles est https://schemas.microsoft.com/ado/2008/09/edm. |
Attributs applicables
Le tableau ci-dessous décrit les attributs qui peuvent s'appliquer à l'élément Parameter.
Nom d'attribut | Requis | Valeur |
---|---|---|
Name |
Oui |
Nom du paramètre. |
Type |
Non |
Type du paramètre. Un paramètre peut correspondre à l'un quelconque des types suivants (ou à des collections de ces types) :
Pour plus d'informations sur ces types, consultez Types de modèle conceptuel. |
Nullable |
Non |
True (valeur par défaut) ou False selon que la propriété peut avoir ou non une valeur Null. |
DefaultValue |
Non |
Valeur par défaut de la propriété. |
MaxLength |
Non |
Longueur maximale de la valeur de propriété. |
FixedLength |
Non |
True ou False selon que la valeur de propriété sera stockée ou non comme une chaîne de longueur fixe. |
Precision |
Non |
Précision de la valeur de propriété. |
Scale |
Non |
Échelle de la valeur de propriété. |
Unicode |
Non |
True ou False selon que la valeur de propriété sera stockée ou non comme une chaîne Unicode. |
Collation |
Non |
Chaîne qui spécifie l'ordre de classement à utiliser dans la source de données. |
Remarque : |
---|
Un nombre quelconque d'attributs d'annotation (attributs XML personnalisés) peut être appliqué à l'élément Parameter.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 suivant illustre un élément Function qui utilise un élément enfant Parameter unique pour définir un paramètre de fonction.
<Function Name="GetYearsEmployed" ReturnType="Edm.Int32">
<Parameter Name="Instructor" Type="SchoolModel.Person" />
<DefiningExpression>
Year(CurrentDateTime()) - Year(cast(Instructor.HireDate as DateTime))
</DefiningExpression>
</Function>
Voir aussi
Concepts
Vue d'ensemble d'Entity Framework
Spécification CSDL
Élément EntityContainer (CSDL)
Autres ressources
Spécifications CSDL, SSDL et MSL
ADO.NET Entity Data Model Tools
How to: Import a Stored Procedure
How to: Define Custom Functions in the Conceptual Model