Découvrez comment optimiser l’accès aux données des bases de données relationnelles avec notre formation spécialisée sur Entity Framework Core en C#.
Nous commencerons par une introduction à l’architecture d’Entity Framework et son intérêt dans le mapping objet-relationnel.
Nous approfondirons l’utilisation de LINQ pour les requêtes de données et les expressions lambdas.
Vous apprendrez à concevoir et configurer des tables avec Entity Framework (Code First) et comprendrez les différentes techniques de requêtage avec LINQ to Entities, Entity SQL, et SQL natif.
Nous explorerons le CRUD, le mapping de divers types de relations, et l’exécution de traitements sur des objets d’une hiérarchie de classes.
Les travaux pratiques vous donneront une expérience concrète de la mise en œuvre de ces concepts dans un contexte réel.
Programme détaillé
Introduction (2 heures)
- L’accès aux données des SGBDR avec ADO.NET
- Objectif et intérêt du mapping objet-relationnel (ORM)
- Architecture d’Entity Framework
- Les différents modes de fonctionnement
Rappels sur l’utilisation de LINQ (4 heures)
- Principe de fonctionnement
- Requête en mode immédiat et mode différé
- L’inférence de type
- Mise en œuvre avec les expressions lambdas
- Les types anonymes et la classe Tuple
- Les différents opérateurs de LINQ
- Réalisation de requêtes dynamiques
- Travaux pratiques:
- Conception d’un catalogue de livre avec des méthodes de recherche selon différents critères
Création et configuration des tables avec Entity Framework (Code First) (5 heures)
- Conception et création d’entité
- Création et utilisation d’un contexte de donnée (classe DbContext, DbSet)
- Gestion des chaines de connexion
- Paramétrage et création de tables
- Utilisation de l’API Fluent
- Mise en l’œuvre des annotations
- Initialisation de tables
- Travaux pratiques:
- Création d’un contexte pour Entity Framework et conception de la table Livre en Code First
Les différentes techniques de requêtage (5 heures)
- Réalisation de requêtes avec LINQ to Entities
- Les différentes opérations du CRUD
- Utilisation de Entity SQL
- Requêtes en SQL natif
- Appel de procédures stockées
- Travaux pratiques:
- Réalisation d’une classe DAO Livre avec les méthodes du CRUD qui permettent de rechercher, insérer, supprimer et modifier un livre
Mapping des différents types de relations (5 heures)
- Mise en œuvre des relations d’associations One-to-One
- Les associations à cardinalités multiples
- Eager Loading et Lazy Loading
- Réalisation de jointures
- Paramétrage des relations avec l’API Fluent
- Les différentes techniques de mapping de l’héritage
- Travaux pratiques:
- Conception d’une classe/table Auteur et mise en place d’une relation d’association one to one avec la classe Livre
- Conception d’une classe/table Commande et mise en place d’une relation à cardinalité multiple avec la classe Livre
- Conception d’une classe LivreEnfant par héritage de la classe Livre et mise en œuvre des différentes techniques de mapping de l’héritage