Les accès aux données ADO résultent d’une longue évolution de techniques antérieures, arrivées à maturité en .NET, qui leur ont donné une autre dimension avec le DataSet, introduisant le mode déconnecté. Cette formation vous permettra de vous familiariser avec les différents scénarios d’accès aux données proposés par les ADO .NET et avec les bonnes pratiques associées pour optimiser les opérations.
Filière
Accès données
Code cours
ADN
Niveau
Intermédiaire
Durée
2 Jours
Participants
Ce cours s'adresse à des développeurs professionnels, souhaitant accéder à des données relationnelles de manière optimale avec les ADO .NET.
Prérequis
Connaissance de Visual Studio et du langage C#. Expérience requise.
Connaître les différentes techniques d’accès aux données proposées en .NET (comparatif avantages/inconvénients de chaque approche).
Connaître les bonnes pratiques de gestion des connexions.
Savoir exécuter une commande de mise à jour (comment éviter les problèmes d’injection SQL, exécution de procédures stockées).
Comprendre l’intérêt et savoir utiliser des transactions (comparatif du modèle ADO .NET avec le TransactionScope, niveaux d’isolation (stratégie de verrouillage optimiste et pessimiste) et d’imbrications).
Lire des données de manière optimale avec un DataReader.
Comprendre les concepts du mode déconnecté du DataSet et de ses différents utilisations (typé vs non typé, sérialisation XML, configuration des TableAdapter, gestion des conflits d’accès concurrentiels).
Savoir écrire du code d’accès aux données générique (commun aux différents fournisseurs de données tels qu’Oracle et SQL Server) avec le DbProviderFactory.
Travaux pratiques
Ecriture d’une classe d’accès aux données permettant d’encapsuler la gestion des connexions, permettant d’exécuter les différents types de commandes et de récupérer une donnée scalaire ou un ensemble de données en lecture seule avec un DataReader.
Mise en œuvre d’une DataSet non typé avec des données non relationnelles.
Conception et mise en œuvre d’un DataSet typé (configuration des TableAdpaters et des relations).
Configuration/exécution des mises à jour et récupérations des erreurs.
Gestion des conflits concurrentiels.
Mise en œuvre d’un DataSet pour gérer des données XML (sérialisation et désérialisation d’un flux RSS).