Partager via


type d’association

Un type d’association (également appelé association) est le bloc de construction fondamental pour décrire les relations dans le modèle de données d’entité (EDM). Dans un modèle conceptuel, une association représente une relation entre deux types d’entités (par Customer exemple, et Order). Dans une application, une instance d’une association représente une association spécifique, telle qu’une association entre une instance de Customer et une instance de 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. (Obligatoire)

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

    Remarque

    Une association ne peut pas représenter une relation entre plus de deux types d’entités. 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 fin d’association doit spécifier une multiplicité de fin d’association qui indique le nombre d’instances de type d’entité pouvant être à une extrémité de l’association. Une multiplicité de fin d’association peut avoir une valeur d’un (1), zéro ou un (0,.1) ou plusieurs (*). Les instances de type d’entité à une extrémité d’une association sont accessibles via des propriétés de navigation ou des 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 ci-dessous 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 Publisher fin est une (1) et la multiplicité de la Book fin est plusieurs (*), indiquant qu’un éditeur publie de nombreux livres et qu’un livre est publié par un éditeur.

Exemple de modèle avec trois types d’entités

Le ADO.NET Entity Framework utilise un langage spécifique au domaine (DSL) appelé langage de définition de schéma conceptuel (CSDL) pour définir des modèles conceptuels. Le langage CSDL suivant définit l’association PublishedBy illustré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