Labo 11
Interface graphique – Partie V – Initiation à l’ORM Entity Framework
Mise en application – Cours Interface graphique – Partie V – Initiation à l'ORM Entity Framework
Séance 11 (Le 07/04/2026)
Solution - GitHub
Exercice 01: Création d'une base de données et des entités de base
Objectif: Comprendre la création d'une base de données et de ses entités.
Consignes:
- Créez un projet console .NET Core.
- Installez Entity Framework Core avec SQL Server.
- Créez les entités
Utilisateur(Id, Nom, Email) etProduit(Id, Nom, Prix). - Configurez le
DbContextet appliquez une migration. - Vérifiez que la base de données est bien créée.
Exercice 02: Ajout et récupération de données
Objectif: Manipuler les données avec Entity Framework Core.
Consignes:
- Ajoutez plusieurs utilisateurs et produits dans la base de données.
- Affichez tous les utilisateurs et produits dans la console.
- Implémentez une recherche de produit par Id.
- Filtrez les produits ayant un prix supérieur à 50$.
Exercice 03: Relations One-to-Many (Utilisateur → Commande)
Objectif: Mettre en place une relation entre deux entités.
Consignes:
- Ajoutez l'entité
Commande(Id, Date, UtilisateurId). - Configurez la relation One-to-Many entre
UtilisateuretCommande. - Ajoutez des commandes associées aux utilisateurs.
- Récupérez et affichez les commandes avec leur utilisateur associé.
Exercice 04: Relations Many-to-Many (Commande ↔ Produit)
Objectif: Travailler avec une relation Many-to-Many.
Consignes:
- Créez une table d'association
CommandeProduit(CommandeId, ProduitId, Quantité). - Configurez la relation Many-to-Many entre
CommandeetProduit. - Ajoutez des produits à des commandes.
- Affichez une commande avec la liste des produits commandés.
Exercice 05: Gestion des mises à jour et suppressions
Objectif: Modifier et supprimer des données avec Entity Framework Core.
Consignes:
- Mettez à jour l'Email d'un utilisateur.
- Supprimez un produit spécifique.
- Supprimez un utilisateur et vérifiez si ses commandes sont bien supprimées en cascade.
Exercice 06: Importation de données depuis un fichier CSV
Objectif: Lire un fichier CSV (avec CsvHelper) et transférer le contenu vers une base de données.
Consignes:
- Créez un fichier
produits.csvcontenant Nom, Prix. - Écrivez un programme en C# pour lire ce fichier et insérer les produits dans la base de données.
- Affichez dans la console les produits importés.
Exercice 07: Migration vers MySQL Server
Objectif: Travailler avec MySQL et Entity Framework Core.
Consignes:
- Installez MySQL Server et MySQL Workbench.
- Ajoutez le package
Pomelo.EntityFrameworkCore.MySql. - Modifiez le
DbContextpour utiliser MySQL au lieu de SQL Server. - Testez les opérations CRUD avec MySQL.
Exercice 08: Création d'une application WPF avec MVVM
Objectif: Développer une application WPF avec une architecture MVVM.
Consignes:
- Créez un projet WPF.
- Implémentez MVVM avec une vue permettant d'afficher les utilisateurs.
- Utilisez un
ObservableCollectionpour la liste des utilisateurs. - Chargez les utilisateurs depuis la base de données et affichez-les.
Exercice 09: Ajout d'utilisateurs via l'interface WPF
Objectif: Permettre l'ajout d'utilisateurs via une interface graphique.
Consignes:
- Ajoutez un formulaire permettant d'entrer un nom et un Email.
- Ajoutez un bouton « Ajouter » qui insère un utilisateur dans la base de données.
- Rafraîchissez la liste après l'ajout.
Exercice 10: Gestion des commandes dans l'application WPF
Objectif: Permettre la gestion des commandes via WPF.
Consignes:
- Ajoutez un
ListViewaffichant les commandes d'un utilisateur sélectionné. - Ajoutez un bouton « Ajouter commande » pour ajouter une commande à un utilisateur.
- Rafraîchissez la liste après ajout.
Exercice 11: Gestion et affichage des produits
Objectif: Travailler avec la liste des produits dans WPF.
Consignes:
- Affichez la liste des produits dans un
ListView(dans la base de données). - Ajoutez un bouton permettant de supprimer un produit.
- Ajoutez un champ permettant de modifier le prix d'un produit.
Exercice 12: Création d'un Dashboard récapitulatif
Objectif: Afficher un résumé des données sous forme de tableau de bord.
Consignes:
- Affichez le nombre total d'utilisateurs, de commandes et de produits.
- Ajoutez un graphique des ventes par mois.
- Ajoutez un bouton permettant d'exporter les données en CSV.