Procédure : créer une association (relation) entre des classes LINQ to SQL (Concepteur O/R)
Les associations entre classes d'entité dans LINQ to SQL sont analogues aux relations entre les tables dans une base de données. Vous pouvez créer des associations entre des classes d'entité en utilisant la boîte de dialogue Éditeur d'associations.
Vous devez sélectionner une classe parente et une classe enfant lorsque vous utilisez la boîte de dialogue Éditeur d'associations pour créer une association. La classe parente est la classe d'entité qui contient la clé primaire ; la classe enfant est la classe d'entité qui contient la clé étrangère. Par exemple, si les classes d'entité ont été créées pour mapper aux tables Customers et Orders de Northwind, la classe Customer constitue la classe parente et la classe Order, la classe enfant.
Notes
Lorsque vous faites glisser des tables de l'Explorateur de serveurs/Explorateur de bases de données vers le Concepteur Objet/Relationnel (Concepteur O/R), les associations sont créées automatiquement selon les relations de clé étrangère qui existent dans la base de données.
Après avoir créé une association, lorsque vous sélectionnez l'association dans le Concepteur O/R, la fenêtre Propriétés contient des propriétés configurables. (L'association est la ligne entre les classes connexes.) Le tableau suivant décrit les propriétés d'une association.
Propriété |
Description |
---|---|
Cardinalité |
Détermine s'il s'agit d'une association un-à-plusieurs ou un-à-un. |
Propriété enfant |
Spécifie s'il faut créer, dans le parent, une propriété qui est une collection ou une référence aux enregistrements enfants sur le côté clé étrangère de l'association. Par exemple, dans l'association entre Customer et Order, si la propriété Child a la valeur True, une propriété nommée Orders est créée dans la classe parente. |
Propriété parent |
Propriété de la classe enfant qui fait référence à la classe parente associée. Par exemple, dans l'association entre Customer et Order, une propriété nommée Customer qui fait référence au client associé à une commande est créée dans la classe Order. |
Propriétés participantes |
Affiche les propriétés d'associations et fournit un bouton de sélection (...) qui rouvre la boîte de dialogue Éditeur d'associations. |
Unique |
Spécifie si les colonnes cibles étrangères ont une contrainte d'unicité. |
Pour créer une association entre des classes d'entité
Cliquez avec le bouton droit sur la classe d'entité qui représente la classe parente dans l'association, pointez sur Ajouter, puis cliquez sur Association.
Vérifiez que la Classe parente correcte est sélectionnée dans la boîte de dialogue Éditeur d'associations.
Sélectionnez la Classe enfant dans la zone de liste déroulante.
Sélectionnez les Propriétés d'association qui lient les classes. En général, un mappage à la relation de clé étrangère définie dans la base de données est alors établi. Par exemple, dans les associations Customers et Orders, les Propriétés d'association sont les CustomerID pour chaque classe.
Cliquez sur OK pour créer l'association.
Voir aussi
Tâches
Procédure pas à pas : création de classes LINQ to SQL (Concepteur O/R)
Procédure : représenter des clés primaires (LINQ to SQL)
Concepts
Vue d'ensemble du Concepteur O/R
Méthodes DataContext (Concepteur O/R)