Partager via


Élément TypeRef (CSDL)

L'élément TypeRef dans le langage CSDL (Conceptual Schema Definition Language) fournit une référence à un type nommé existant. L'élément TypeRef peut être un enfant de l'élément CollectionType, qui permet de spécifier qu'une fonction a une collection en tant que paramètre ou type de retour. Pour plus d'informations, consultez Élément Function (CSDL).

Un élément TypeRef peut avoir les éléments enfants suivants (dans l'ordre répertorié) :

Attributs applicables

Le tableau ci-dessous décrit les attributs qui peuvent s'appliquer à l'élément TypeRef. Notez que les attributs DefaultValue, MaxLength, FixedLength, Precision, Scale, Unicode et Collation sont uniquement applicables à EDMSimpleTypes. Pour plus d'informations, consultez Facettes (CSDL) et Types de modèle conceptuel.

Nom d'attribut Requis Valeur

Type

Non

Nom du type référencé.

Nullable

Non

True (valeur par défaut) ou False selon que la propriété peut avoir ou non une valeur NULL.

Ee476605.note(fr-fr,VS.100).gifRemarque :
Dans la version du langage CSDL indiquée par l'espace de noms https://schemas.microsoft.com/ado/2006/04/edm, une propriété de type complexe doit avoir Nullable="False".

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.

Ee476605.note(fr-fr,VS.100).gifRemarque :
Un nombre quelconque d'attributs d'annotation (attributs XML personnalisés) peut être appliqué à l'élément CollectionType.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 illustre une fonction définie par modèle qui utilise l'élément TypeRef (en tant qu'enfant d'un élément CollectionType) pour spécifier que la fonction accepte une collection de types d'entités Department.

<Function Name="GetAvgBudget">
     <Parameter Name="Departments">
         <CollectionType>
            <TypeRef Type="SchoolModel.Department"/>
         </CollectionType>
          </Parameter>
      <ReturnType Type="Collection(Edm.Decimal)"/>
      <DefiningExpression>
            SELECT VALUE AVG(d.Budget) FROM Departments AS d
      </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