Type d'association (Entity Data Model)

Un type d'association (ou association) est le bloc de construction fondamental pour la description des relations dans le modèle EDM (Entity Data Model). Dans un modèle conceptuel, une association représente une relation entre deux types d'entité (tels que Customer et Order). Dans une application, une instance d'une association représente une association spécifique (comme une association entre une instance de Customer et une instance d'Order). Les instances d'association sont regroupées logiquement dans un ensemble d'associations.

Une définition d'association contient les informations suivantes :

  • Nom unique. (Requis)

  • Deux terminaisons d'association, une pour chaque type d'entité dans la relation. (Requis)

    Ee382823.note(fr-fr,VS.100).gifRemarque :
    Une association ne peut pas représenter de relation entre plus de deux types d'entité.Toutefois, une association peut définir une relation réciproque en spécifiant le même type d'entité pour chacune de ses terminaisons d'association.

  • Contrainte d'intégrité référentielle. (Facultatif)

Chaque terminaison d'association doit spécifier une multiplicité de terminaison d'association, qui indique le nombre d'instances de type d'entité pouvant figurer à une terminaison de l'association. La multiplicité de terminaison d'association peut avoir une valeur égale à un (1), zéro ou un (0..1), ou plusieurs (*). Il est possible d'accéder aux instances de type d'entité au niveau de la terminaison d'une association via les propriétés de navigation ou les clés étrangères si elles sont exposées sur un type d'entité. Pour plus d'informations, consultez Entity Data Model : clés étrangères.

Exemple

Le diagramme suivant montre un modèle conceptuel avec deux associations : PublishedBy et WrittenBy. Les terminaisons d'association pour l'association PublishedBy sont les types d'entité Book et Publisher. La multiplicité de la terminaison Publisher est un (1) et celle de la terminaison Book est plusieurs (*), ce qui indique qu'un éditeur publie de nombreux livres et qu'un livre est publié par un seul éditeur.

Exemple de modèle

ADO.NET Entity Framework utilise un langage spécifique à un domaine (DSL), appelé CSDL (Conceptual Schema Definition Language), pour définir des modèles conceptuels. Le CSDL suivant définit l'association PublishedBy présentée dans le diagramme ci-dessus :

<Association Name="PublishedBy">
      <End Type="BooksModel.Book" Role="Book" Multiplicity="*" />
      <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" />
    </Association>

Voir aussi

Concepts

Concepts clés d'Entity Data Model
Entity Data Model