Share via


Élément EntitySet (CSDL)

L'élément EntitySet dans le langage CSDL (Conceptual Schema Definition Language) est un conteneur logique pour les instances d'un type d'entité et les instances de tout type dérivé de ce type d'entité.La relation entre un type d'entité et un jeu d'entités est analogue à la relation entre une ligne et une table dans une base de données relationnelle.Comme une ligne, un type d'entité définit un jeu de données connexes et, comme une table, un jeu d'entités contient des instances de cette définition.Un jeu d'entités fournit une construction pour le regroupement d'instances du type d'entité, afin qu'elles puissent être mappées aux structures de données associées dans une source de données.Pour plus d'informations, consultez Élément EntityContainerMapping (MSL) et Élément EntitySetMapping (MSL).

Plusieurs jeux d'entités peuvent être définis pour un type d'entité particulier.

Notes

Entity Data Model Designer (Concepteur d'entités) ne prend pas en charge les modèles conceptuels qui contiennent des jeux d'entités multiples par type.

L'élément EntitySet 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 EntitySet.

Nom d'attribut

Requis

Value

Name

Oui

Nom du jeu d'entités.

EntityType

Oui

Nom qualifié complet du type d'entité pour lequel le jeu d'entités contient des instances.

Notes

Un nombre quelconque d'attributs d'annotation (attributs XML personnalisés) peut être appliqué à l'élément EntitySet.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 EntityContainer avec trois éléments EntitySet :

<EntityContainer Name="BooksContainer" >
  <EntitySet Name="Books" EntityType="BooksModel.Book" />
  <EntitySet Name="Publishers" EntityType="BooksModel.Publisher" />
  <EntitySet Name="Authors" EntityType="BooksModel.Author" />
  <AssociationSet Name="PublishedBy" Association="BooksModel.PublishedBy">
    <End Role="Book" EntitySet="Books" />
    <End Role="Publisher" EntitySet="Publishers" />
  </AssociationSet>
  <AssociationSet Name="WrittenBy" Association="BooksModel.WrittenBy">
    <End Role="Book" EntitySet="Books" />
    <End Role="Author" EntitySet="Authors" />
  </AssociationSet>
</EntityContainer>

Il est possible de définir des jeux d'entités multiples par type (MEST).L'exemple suivant définit un conteneur d'entités avec deux jeux d'entités pour le type d'entité Book :

<EntityContainer Name="BooksContainer" >
  <EntitySet Name="Books" EntityType="BooksModel.Book" />
  <EntitySet Name="FictionBooks" EntityType="BooksModel.Book" />
  <EntitySet Name="Publishers" EntityType="BooksModel.Publisher" />
  <EntitySet Name="Authors" EntityType="BooksModel.Author" />
  <AssociationSet Name="PublishedBy" Association="BooksModel.PublishedBy">
    <End Role="Book" EntitySet="Books" />
    <End Role="Publisher" EntitySet="Publishers" />
  </AssociationSet>
  <AssociationSet Name="BookAuthor" Association="BooksModel.BookAuthor">
    <End Role="Book" EntitySet="Books" />
    <End Role="Author" EntitySet="Authors" />
  </AssociationSet>
</EntityContainer>

Voir aussi

Concepts

Vue d'ensemble d'Entity Framework

Spécification CSDL

Élément EntityContainer (CSDL)

jeu d'entités

Autres ressources

Spécifications CSDL, SSDL et MSL

ADO.NET Entity Data Model Tools