Introduction
- Programmation orientée objet : révisions
- Implémentation d'une interface
- Les technologies d'accès aux données
- Collections génériques et non génériques
Exploiter les fonctionnalités du langage C Sharp
Constructions du langage
- Les propriétés implémentées automatiquement
- Les avantages de la déclaration implicite de type
Enrichissement de la logique de programmation
- Instanciation d'objets entités
- Simplification avec les initialiseurs d'objets
- Construction d'objets anonymes
Méthodes d'extension pour la manipulation des données du niveau intermédiaire
Filtre et tri de données avecles expressions lambda
- Construction d'expressions lambda
- Comparaison des délégués et des expressions lambda
- Méthodes d'extension Count, Reverse, Union, Except et autres
- Passage de types et de fonctionnalités aux méthodes
Application des fonctionnalités d'extension
- Flexibilité du code grâce aux délégués
- Paramétrage des délégués et d'expressions lambda
- Simplification du code avec les délégués génériques Func<T,R>
Les mots-clés des requêtes LINQ
Syntaxe et sémantique
- Codage de requêtes LINQ
- Tri de données et d'objets
- Filtrage avec from, where, orderby et group
Itération sur les collections
- Interface entre C Sharp et LINQ avec IEnumerable<T>
- Conversion de IEnumerable<T> en List<T>
Adaptation de LINQ et de l'Entity Framework
Comparaison entre ADO.NET et LINQ
- Objets DataSet et listes génériques
- SqlDataReader et IEnumerable<T>
- Traitement des informations du niveau données
Connexion à une base de données et lecture
- Création d'un ObjectContext
- Rattachement à des bases de données via l'Entity Framework (EF)
- Corrélation entre classes d'entités et tables de données
- Préservation du paradigme orienté objet
L'outil Concepteur Objet/Relationnel
- Mise en correspondance des tables de données et classes d'entités
- Mise en place de relations d'héritage
- Importation de procédures stockées
Mise à jour d'une base de données
- Insertion, modification et suppression de données
- Traitement des erreurs et exceptions
- "Commit" et "roll back" de transactions
Énumérations et classes génériques
Étude d'enum
- Comparer IEnumerable<T> et IEnumerator<T>
- Génération d'énumérations dynamiques
- Le mot-clé yield
Écriture de classes génériques
- Minimiser les classes dupliquées
- Implémentation d'un énumérateur générique rapide
Traitement de donnéesà l'aide de requêtes LINQ
Manipulation des données
- Combinaison et agrégation de données similaires avec group
- Mise en œuvre de jointures internes, externes et groupées
- Création de sous-ensembles de données avec la clause into
Techniques LINQ avancées
- Création de résultats de requêtes anonymes
- Obtention de vues composites à l'aide de clauses from
- Optimisation de requêtes LINQ avec des délégués et des expressions lambda
Application de LINQ à XML
Exploitation de l'espace de nom XML
- Charger du XML dynamiquement via le Web
- Créer et sauvegarder du contenu XElement
Traitement du XML
- Accès au document, aux éléments et aux attributs
- Analyse d'un document XML avec LINQ