Élément Using (CSDL)
L'élément Using dans le langage CSDL (Conceptual Schema Definition Language) importe le contenu d'un modèle conceptuel qui existe dans un espace de noms différent. En définissant la valeur de l'attribut Namespace, vous pouvez faire référence à des types d'entités, types complexes et types d'association définis dans un autre modèle conceptuel. Plusieurs éléments Using peuvent être des enfants d'un élément Schema.
Remarque : |
---|
L'élément Using dans le langage CSDL ne fonctionne pas exactement comme une instruction using dans un langage de programmation.En important un espace de noms à l'aide d'une instruction using dans un langage de programmation, vous n'affectez pas les objets dans l'espace de noms d'origine.Dans le langage CSDL, un espace de noms importé peut contenir un type d'entité dérivé d'un type d'entité figurant dans l'espace de noms d'origine.Cela peut affecter les jeux d'entités déclarés dans l'espace de noms d'origine.Pour plus d'informations sur les jeux d'entités, consultez l'élément EntitySet. |
L'élément Using peut avoir les éléments enfants suivants :
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 Using.
Nom d'attribut | Requis | Valeur |
---|---|---|
Namespace |
Oui |
Nom de l'espace de noms importé. |
Alias |
Oui |
Identificateur utilisé à la place du nom de l'espace de noms. Bien que cet attribut soit obligatoire, il n'est pas nécessaire qu'il soit utilisé à la place du nom de l'espace de noms pour qualifier les noms d'objets. |
Remarque : |
---|
Un nombre quelconque d'attributs d'annotation (attributs XML personnalisés) peut être appliqué à l'élément Using.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 l'élément Using, utilisé pour importer un espace de noms défini ailleurs. Notez que l'espace de noms de l'élément Schema de l'exemple est BooksModel
. La propriété Address
sur Publisher
EntityType est un type complexe défini dans l'espace de noms ExtendedBooksModel
(importé avec l'élément Using).
<Schema xmlns="https://schemas.microsoft.com/ado/2008/09/edm"
xmlns:cg="https://schemas.microsoft.com/ado/2006/04/codegeneration"
xmlns:store="https://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator"
Namespace="BooksModel" Alias="Self">
<Using Namespace="BooksModel.Extended" Alias="BMExt" />
<EntityContainer Name="BooksContainer" >
<EntitySet Name="Publishers" EntityType="BooksModel.Publisher" />
</EntityContainer>
<EntityType Name="Publisher">
<Key>
<PropertyRef Name="Id" />
</Key>
<Property Type="Int32" Name="Id" Nullable="false" />
<Property Type="String" Name="Name" Nullable="false" />
<Property Type="BMExt.Address" Name="Address" Nullable="false" />
</EntityType>
</Schema>
Voir aussi
Concepts
Vue d'ensemble d'Entity Framework
Spécification CSDL
Élément Schema (CSDL)
Autres ressources
Spécifications CSDL, SSDL et MSL
ADO.NET Entity Data Model Tools
Entity Data Model: Namespaces