Organisme de Formation aux technologies et métiers de L'informatique
visual-studio

Formation Développement C# avancé et accès aux données sous Visual Studio

Maîtriser l'accès aux données des applications .Net

Informations générales

M861
4 jours (28h)
2 550 €HT

Objectifs

Après ce cours, vous serez capable de :

  • Construire une application qui accède aux données dans une Architecture Clean, en s'appuyant sur les patterns Repository et Unit Of Work
  • Comprendre et savoir utiliser Ado.net et/ou Entity Framework Core
  • Approfondir les notions objets liés à la programmation objet et à l'utilisation de .Net
  • Utiliser les outils de Visual Studio pour documenter et
  • Construire l'application, ainsi que pour la refactoriser à chaque étape de son évolution

Public

Ce cours s'adresse avant tout aux personnes suivantes :

  • Développeurs Chargés de développement d'applications informatiques

Prérequis

Pour suivre ce cours, vous devez déjà posséder les connaissances suivantes :

  • Avoir suivi la formation "Programmation C# avec .Net 5" (M860) ou maîtriser le langage de programmation orientée objet C#
  • Connaissance des concepts de bases de données relationnelles et du langage SQL

Programme de la formation

La nature des applications actuelles est fortement basée sur les données, quelles que soient leur forme (serveur de bases de données, XML, JSON…). En complément des compétences traditionnelles nécessaires aux développements d'applications, les développeurs doivent donc aujourd'hui maîtriser les briques ADO du Framework .Net pour garantir un accès de qualité aux données. Par la mise en œuvre de modèles de conception tels que MVC ou MVVM, l'accès aux données se veut de plus en plus détaché des bases de données et fait souvent intervenir un mappage objet-relationnel, ce qui a été pris en compte par l'introduction d'Entity Framework. Cette formation apporte précisément aux programmeurs les bases d'ADO .Net et d'Entity Framework qui leur permettront d'intégrer rapidement des projets ou des équipes de développement utilisant ces standards.

Architecture des applications liées aux données

  • Panorama des architectures d'applications liées aux données
  • Présentation des technologies d'accès aux données .Net
  • Trace et stratégie de gestion des erreurs
  • Rappels sur les notions .Net et C# : async/await, Méthodes d'extension, LINQ
  • Rappels et présentation des notions objets utilisées dans la formation : Interface, IoC et DI, Design Pattern
  • Introduction aux Pattern Repository et Unit Of Work
  • Introduction au Domain Driven Development et à la Clean Architecture

ADO .Net

  • System.Data et fournisseurs d'accès aux données
  • Architecture connectée vs Architecture déconnectée
  • Connection, Command, DataReader
  • Pattern Repository et intégration dans une architecture Clean
  • Utilisation des outils d'accès aux données de Visual Studio

Entity Framework Core

  • Intérêt du mappage objet-relationnel
  • Approche Database First vs Code First Modèles : entité et objet de contexte
  • Gestion des étapes de migration avec les outils Entity Framework Core
  • Data Annotations et Fluent API Refactoring et découplage des composants d'une l'application en utilisant l'IoC et DI

Transaction et Concurrence d'accès

  • Notion de transaction
  • Verrouillage optimiste vs Pessimiste
  • Gestion des contraintes d'intégrité référentielle
  • Gestion de la concurrence d'accès avec Ado.net et EF Core
  • Tracking des entités avec EF Core
  • Refactoring et Pattern Unit Of Work

Base de données volumineuse

  • Présentation des problèmes à surmonter en consultation
  • Présentation des problèmes à surmonter en mise à jour
  • Filtrage des données, limitation du résultat des requêtes
  • Mise à jour en masse
  • Approche CQRS
  • IEnumerable vs IQueryable
  • Gestion des BLOB

Du Web API REST au microservice

  • Présentation de REST
  • Service Web API REST et OData
  • Lazzy Loading et Eager Loading avec EF Core
  • Client d'un service Web API REST
  • Passage à une approche microservice
plus d'infos

Méthode pédagogique

Chaque participant travaille sur un poste informatique qui lui est dédié. Un support de cours lui est remis soit en début soit en fin de cours. La théorie est complétée par des cas pratiques ou exercices corrigés et discutés avec le formateur. Le formateur projette une présentation pour animer la formation et reste disponible pour répondre à toutes les questions.

Méthode d'évaluation

Tout au long de la formation, les exercices et mises en situation permettent de valider et contrôler les acquis du stagiaire. En fin de formation, le stagiaire complète un QCM d'auto-évaluation.

Suivre cette formation à distance

  • Un ordinateur avec webcam, micro, haut-parleur et un navigateur (de préférence Chrome ou Firefox). Un casque n'est pas nécessaire suivant l'environnement.
  • Une connexion Internet de type ADSL ou supérieure. Attention, une connexion Internet ne permettant pas, par exemple, de recevoir la télévision par Internet, ne sera pas suffisante, cela engendrera des déconnexions intempestives du stagiaire et dérangera toute la classe.
  • Privilégier une connexion filaire plutôt que le Wifi.
  • Avoir accès au poste depuis lequel vous suivrez le cours à distance au moins 2 jours avant la formation pour effectuer les tests de connexion préalables.
  • Votre numéro de téléphone portable (pour l'envoi du mot de passe d'accès aux supports de cours et pour une messagerie instantanée autre que celle intégrée à la classe virtuelle).
  • Selon la formation, une configuration spécifique de votre machine peut être attendue, merci de nous contacter.
  • Pour les formations incluant le passage d'une certification la dernière journée, un voucher vous est fourni pour passer l'examen en ligne.
  • Pour les formations logiciel (Adobe, Microsoft Office...), il est nécessaire d'avoir le logiciel installé sur votre machine, nous ne fournissons pas de licence ou de version test.
  • Horaires identiques au présentiel.

Mis à jour le 03/12/2025
Le contenu peut faire l'objet de légères adaptations selon les besoins et la progression des participants.