Partager via


Procédure pas à pas : créer des classes LINQ to SQL à l’aide de l’héritage à table unique (Concepteur O/R)

Les outils LINQ to SQL dans Visual Studio prennent en charge l’héritage à table unique, car il est généralement implémenté dans les systèmes relationnels. Cette procédure pas à pas s’étend sur les étapes génériques fournies dans la rubrique Guide pratique pour configurer l’héritage à l’aide de la rubrique Concepteur O/R et fournit des données réelles pour illustrer l’utilisation de l’héritage dans le Concepteur O/R.

Pendant cette procédure pas à pas, vous effectuez les tâches suivantes :

  • Créez une table de base de données et ajoutez-y des données.

  • Créez une application Windows Forms.

  • Ajoutez un fichier LINQ to SQL à un projet.

  • Créez des classes d’entité.

  • Configurez les classes d’entité pour utiliser l’héritage.

  • Consultez la classe héritée.

  • Affichez les données sur un Windows Form.

Créer une table à partir de laquelle hériter

Pour voir comment l’héritage fonctionne, vous créez une petite Person table, utilisez-la comme classe de base, puis créez un Employee objet qui hérite de celui-ci.

Pour créer une table de base pour illustrer l’héritage

  1. Dans l’Explorateur de serveurs ou l’Explorateur de bases de données, cliquez avec le bouton droit sur le nœud Tables , puis cliquez sur Ajouter une nouvelle table.

    Note

    Vous pouvez utiliser la base de données Northwind ou toute autre base de données à laquelle vous pouvez ajouter une table.

  2. Dans le Concepteur de tables, ajoutez les colonnes suivantes à la table :

    Nom de la colonne Type de données Autoriser les valeurs Null
    Identifiant int Faux
    Type int Vrai
    Prénom nvarchar(200) Faux
    Nom de famille nvarchar(200) Faux
    Manager int Vrai
  3. Définissez la colonne ID comme clé primaire.

  4. Enregistrez la table et nommez-la Person.

Ajouter des données à la table

Pour que vous puissiez vérifier que l'héritage est configuré correctement, la table nécessite des données pour chaque classe dans l'héritage par table unique.

Pour ajouter des données à la table

  1. Ouvrez la table en mode données. (Cliquez avec le bouton droit sur la table Person dans l’Explorateur de serveurs ou l’Explorateur de bases de données , puis cliquez sur Afficher les données de table.)

  2. Copiez les données suivantes dans la table. (Vous pouvez le copier, puis le coller dans la table en sélectionnant toute la ligne dans le volet Résultats .)

    Identifiant Type Prénom Nom de famille Manager
    1 1 Anne Wallace NULL
    2 1 Carlos Grilo NULL
    3 1 Yael Peled NULL
    4 2 Gatis Ozolins 1
    5 2 Andreas Hauser 1
    6 2 Tiffany Phuvasate 1
    7 2 Alexey Orekhov 2
    8 2 Michał Poliszkiewicz 2
    9 2 Tai Yee 2
    10 2 Fabricio Noriega 3
    11 2 Mindy Martin 3
    12 2 Ken Kwok 3

Créer un projet

Maintenant que vous avez créé la table, créez un nouveau projet afin de démontrer la configuration de l’héritage.

Pour créer la nouvelle application Windows Forms

  1. Dans Visual Studio, dans le menu Fichier, sélectionnez Nouveau>Projet.

  2. Développez Visual C# ou Visual Basic dans le volet gauche, puis sélectionnez Bureau Windows.

  3. Dans le volet central, sélectionnez le type de projet d’application Windows Forms .

  4. Nommez le projet InheritanceWalkthrough, puis choisissez OK.

    Le projet InheritanceWalkthrough est créé et ajouté à l’Explorateur de solutions.

Ajouter un fichier de classes LINQ to SQL au projet

Pour ajouter un fichier LINQ to SQL au projet

  1. Dans le menu Projet , cliquez sur Ajouter un nouvel élément.

  2. Cliquez sur le modèle de classes LINQ to SQL , puis sélectionnez Ajouter.

    Le .dbml fichier est ajouté au projet et le Concepteur O/R s’ouvre.

Créer l’héritage en utilisant le Concepteur O/R

Configurez l’héritage en faisant glisser un objet Inheritance de la boîte à outils vers la surface de conception.

Pour créer l’héritage

  1. Dans l’Explorateur de serveurs ou l’Explorateur de bases de données, accédez à la table Person que vous avez créée précédemment.

  2. Faites glisser la table Person sur la surface de conception de l'O/R Designer.

  3. Faites glisser une deuxième table Person sur le Concepteur O/R et remplacez son nom par Employee.

  4. Supprimez la propriété Manager de l’objet Person .

  5. Supprimez les propriétés Type, ID, FirstName et LastName de l’objet Employee . (En d’autres termes, supprimez toutes les propriétés à l’exception du Gestionnaire.)

  6. À partir de l’onglet Concepteur relationnel d’objet de la boîte à outils, créez un héritage entre les objets Person et Employee . Pour ce faire, cliquez sur l’élément Héritage dans la boîte à outils et relâchez le bouton de la souris. Ensuite, cliquez sur l’objet Employee , puis sur l’objet Person dans le Concepteur O/R. La flèche sur la ligne d’héritage pointe ensuite vers l’objet Person .

  7. Cliquez sur la ligne d’héritage sur l’aire de conception.

  8. Affectez à la propriété Discriminator la valeur Type.

  9. Définissez la propriété Valeur du discriminateur de classe dérivée sur 2.

  10. Définissez la propriété Valeur du discriminateur de classe de base sur 1.

  11. Définissez la propriété Héritage par défaut sur Person.

  12. Construisez le projet.

Interroger la classe héritée et afficher les données sur le formulaire

Vous ajoutez maintenant du code au formulaire qui interroge une classe spécifique dans le modèle objet.

Pour créer une requête LINQ et afficher les résultats sur le formulaire

  1. Faites glisser un ListBox sur Form1.

  2. Double-cliquez sur le formulaire pour créer un gestionnaire d’événements Form1_Load .

  3. Ajoutez le code suivant au gestionnaire d’événements Form1_Load :

    NorthwindDataContext dc = new DataClasses1DataContext();
    var results = from emp in dc.Persons
                  where emp is Employee
                  select emp;
    
    foreach(Employee Emp in results)
    {
        listBox1.Items.Add(Emp.LastName)
    }
    

Tester l’application

Exécutez l’application et vérifiez que les enregistrements affichés dans la zone de liste sont tous les employés (les enregistrements dont la valeur est 2 dans leur colonne Type ).

Pour tester l’application

  1. Appuyez sur F5.

  2. Vérifiez que seuls les enregistrements dont la valeur est 2 dans leur colonne Type sont affichés.

  3. Fermez le formulaire. (Dans le menu Débogage , cliquez sur Arrêter le débogage.)