Module 6 développement d'applications de bases de données avec asp.net

4 688 vues

Publié le

Ce module permet de développer des applications de bna

0 commentaire
4 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
4 688
Sur SlideShare
0
Issues des intégrations
0
Intégrations
344
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
4
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Module 6 développement d'applications de bases de données avec asp.net

  1. 1. Développement web avecVisual Studio 2012 et ASP.NETModule 6 – Développement d’Applications de Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  2. 2. Développement web avec ASP.NET et Visual Studio 2012 Objectifs du module 2  Permettre de valider les données dans les applications webModule 6 - Développement d’Applications de Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  3. 3. Développement web avec ASP.NET et Visual Studio 2012 Plan du module 3  Introduction à .NET Framework  Présentation d’ASP.NET  Développement d’applications ASP.NET  Formes web et contrôles orientés serveur  Contrôles ASP.NETModule 6 - Développement d’Applications de Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  4. 4. Développement web avec ASP.NET et Visual Studio 2012 4 Module 6 - Développement d’Applications de Bases de Données Section 1 : Connexion aux bases de données en utilisant ADO.NETCopyright © 2013, Mostefai Mohammed Amine
  5. 5. Développement web avec ASP.NET et Visual Studio 2012 Pourquoi une base de données ? 5  Stockage des données Module 6 - Développement d’Applications de  Fonctionnalités fournies telles que l’exécution rapide de requêtes, la mise à jour, l’indexation Bases de Données  Réutilisation des données entre applications  PerformanceSection 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  6. 6. Développement web avec ASP.NET et Visual Studio 2012 La Technologie ADO.NET 6  ADO.NET est une technologie qui fait partie du .NET Framework Module 6 - Développement d’Applications de  ADO.NET fournit les mécanismes permettant aux applications de se connecter aux bases de données Bases de Données  ADO.NET peut se connecter nativement à SQL Server, Oracle, Access et SQL Server Compact  Pour d’autres SGBD comme MySQL, il suffit d’installer les drivers adéquatsSection 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  7. 7. Développement web avec ASP.NET et Visual Studio 2012 Gestion des données avec ADO.NET 7  ADO.NET peut travailler en mode connecté et en mode déconnecté Module 6 - Développement d’Applications de  ADO.NET utilise XML comme format pour la gestion des données  En mode déconnecté, ADO.NET utilise des classes comme DataSet pour le Bases de Données travail en offlineSection 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  8. 8. Développement web avec ASP.NET et Visual Studio 2012 Tutoriel 6.1 : Connexion aux bases de données 8 • Lancer Tutoriel 6.1, étape 1 et 2 Module 6 - Développement d’Applications de Bases de DonnéesSection 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  9. 9. Développement web avec ASP.NET et Visual Studio 2012 ADO.NET en mode connecté 9 Classe Description DbConnection Permet d’établir une connexion à une base de données Module 6 - Développement d’Applications de DbCommand Permet d’exécuter une commande SQL sur une base de données DbDataAdapter Permet d’établir le lien entre les classes du mode connecté et celles du mode déconnecté. Par exemple remplit des données à partir d’une BDD Bases de Données ou envoie les modifications en mode déconnecté vers la base de données DbDataReader Un curseur en lecture seule permettant de parcourir les résultats d’une requête SQLSection 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  10. 10. Développement web avec ASP.NET et Visual Studio 2012 La Classe DbConnection 10 Propriété / Méthode Description ConnectionString La chaîne de connexion vers la base de données Module 6 - Développement d’Applications de Open() Ouvre la connexion Close() Ferme la connexion BeginTransaction() Commence une nouvelle transaction Bases de Données CreateCommand() Crée une nouvelle commande SQLSection 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  11. 11. Développement web avec ASP.NET et Visual Studio 2012 La Classe DbCommand 11 Propriété / Méthode Description CommandText Les instructions SQL de la commande Module 6 - Développement d’Applications de ExecuteReader() Renvoie un curseur de lecture ExecuteNonQuery Exécute une requête qui ne renvoie pas de lignes de résultats (INSERT, UPDATE ou DELETE) Bases de Données ExecuteScalar() Exécute une requête qui renvoie un agrégat ou une seule valeur (SELECT COUNT(*), SELECT Max())Section 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  12. 12. Développement web avec ASP.NET et Visual Studio 2012 La Classe DbDataReader 12 Propriété / Méthode Description FieldCount Le nombre de colonnes des résultats Module 6 - Développement d’Applications de Read() Avance le curseur vers le prochain résultat. Si le curseur arrive à la fin, cette méthode renvoie false. GetString(col), Renvoie la valeur de colonne « col » selon son type Bases de Données GetInt(col), GetDateTime(col),..Section 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  13. 13. Développement web avec ASP.NET et Visual Studio 2012 La Classe DbDataAdapter 13 Propriété / Méthode Description Fill(dataset) Remplit un ensemble de données depuis une base de données Module 6 - Développement d’Applications de Update Synchronise la base de données en envoyant les modifications effectuées en local Bases de DonnéesSection 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  14. 14. Développement web avec ASP.NET et Visual Studio 2012 Tutoriel 6.1 : Accès à une base de données en mode connecté 14 • Lancer Tutoriel 6.1, étape 3 Module 6 - Développement d’Applications de Bases de DonnéesSection 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  15. 15. Développement web avec ASP.NET et Visual Studio 2012 ADO.NET en mode déconnecté 15 Classe Description DataSet Conteneur qui représente la base de données déconnectée Module 6 - Développement d’Applications de DataTable Représente une table en mode déconnecté DataRow Représente une ligne en mode déconnecté DataColumn Représente une colonne en mode déconnecté Bases de Données Constraint Une contrainte : par exemple clé unique ou clé étrangèreSection 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  16. 16. Développement web avec ASP.NET et Visual Studio 2012 Tutoriel 6.1 : Accès à une base de données en mode déconnecté 16 • Lancer Tutoriel 6.1, étape 4 Module 6 - Développement d’Applications de Bases de DonnéesSection 1 : Connexion aux bases de données en utilisant ADO.NET Copyright © 2013, Mostefai Mohammed Amine
  17. 17. Module 6 - Développement d’Applications de Bases de DonnéesDéveloppement web avec ASP.NET et Visual Studio 2012 Section 2 : Connexion aux bases de données en utilisant Entity Framework 17 Copyright © 2013, Mostefai Mohammed Amine
  18. 18. Développement web avec ASP.NET et Visual Studio 2012 Introduction à EF 18  Entity Framework est un ORM (Object-Relational Mapping) fourni par Module 6 - Développement d’Applications de Microsoft avec .NET Framework et Visual Studio  Un ORM permet d’utiliser le même modèle (classes des entités des Bases de Données systèmes) pour implémenter les fonctionnalités du système et gérer la persistance (accès aux données à travers les bases de données)  Les ORMs génère les requêtes nécessaires d’une manière transparente aux utilisateusSection 2 : Connexion aux bases de données en utilisant Entity Framework Copyright © 2013, Mostefai Mohammed Amine
  19. 19. Développement web avec ASP.NET et Visual Studio 2012 Modes EF 19  EF peut être utilisé en plusieurs modes : Database First, Code First et Module 6 - Développement d’Applications de Model First  Dans le mode «Database First », la base de données existe déjà et EF Bases de Données génère les classes à partir des tables existantes  Dans le mode « Model First », le développeur modélise les classe puis génère la base de données à partir de cette modélisation  Dans le mode « Code First », les classes sont écrites directement par le développeur (POCO, Plain Old Code Objects)Section 2 : Connexion aux bases de données en utilisant Entity Framework Copyright © 2013, Mostefai Mohammed Amine
  20. 20. Développement web avec ASP.NET et Visual Studio 2012 Mappings 20  Les mappings permettent aux ORMs de générer correctement les requête Module 6 - Développement d’Applications de permettant de lire ou de modifier les données vers ou depuis la base de données Bases de Données  Dans « Model First » et « Database First », l’utilisateur utilise un designer graphique et les mappings sont générés automatiquement et modifiés via l’interface graphique  Dans « Code First », les mappings sont écrits à la main en utilisant la syntaxe « Fluent »Section 2 : Connexion aux bases de données en utilisant Entity Framework Copyright © 2013, Mostefai Mohammed Amine
  21. 21. Développement web avec ASP.NET et Visual Studio 2012 Correspondances 21 Modèle Objet Modèle BDD Classe Table, Vue Objet Ligne, plusieurs lignes combinées Module 6 - Développement d’Applications de Propriété Champ Association Relations entre tables, clés étrangères Bases de Données Types complexes Regroupement de champs Enumérations Valeurs de certains champs Héritage Plusieurs approche : une table contient la hiérarchie ou plusieurs tablesSection 2 : Connexion aux bases de données en utilisant Entity Framework Copyright © 2013, Mostefai Mohammed Amine
  22. 22. Développement web avec ASP.NET et Visual Studio 2012 Classes d’accès 22  La classe « contexte » est une classe conteneur permettant d’accéder aux Module 6 - Développement d’Applications de différents objets issus des bases de données  Le composant « EntityDataSource » permet de se connecter directement à Bases de Données un contexte Entity FrameworkSection 2 : Connexion aux bases de données en utilisant Entity Framework Copyright © 2013, Mostefai Mohammed Amine
  23. 23. Développement web avec ASP.NET et Visual Studio 2012 Linq 23  La technologie Linq permet aux développeurs d’effectuer des requêtes sur Module 6 - Développement d’Applications de plusieurs types de données  LinqToEntities permet de faire des requêtes sur des objets Bases de Données EntityFramework  EntityFramework se charge de traduire automatiquement les requêtes Linq en requêtes SQLSection 2 : Connexion aux bases de données en utilisant Entity Framework Copyright © 2013, Mostefai Mohammed Amine
  24. 24. Développement web avec ASP.NET et Visual Studio 2012 Tutoriel 6.2 : Faires des requêtes en utilisant LinqToEntities 24 • Lancer Tutoriel 6.2, étape 1 Module 6 - Développement d’Applications de Bases de DonnéesSection 2 : Connexion aux bases de données en utilisant Entity Framework Copyright © 2013, Mostefai Mohammed Amine
  25. 25. Développement web avec ASP.NET et Visual Studio 2012 Module 6 - Développement d’Applications de Bases de Données 25 Section 3 : Connecter les Contrôles aux bases de donnéesCopyright © 2013, Mostefai Mohammed Amine
  26. 26. Développement web avec ASP.NET et Visual Studio 2012 Introduction 26  ASP.NET offre des facilités permettant aux contrôles de se connecter Module 6 - Développement d’Applications de directement aux bases de données  Il y a deux types de contrôles : les sources de données et les composants Bases de Données d’affichage  Les sources de données sont l’intermédiaire entre la BDD et le contrôle. Elles permettent des opérations d’accès, de modification de filtrage ou de tri des donnéesSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  27. 27. Développement web avec ASP.NET et Visual Studio 2012 Composants Source 27 Composant Description SqlDataSource Permet de se connecter à une source de données Module 6 - Développement d’Applications de SQL Server directement LinqDataSource Permet de se connecter à une source Linq Bases de Données ObjectDataSource Permet de se connecter à une source d’objets en mémoire, par exemple une liste d’objets XmlDataSource Permet de se connecter à des données se trouvant dans des documents XML EntityDataSource Permet de se connecter à un contexte EntityFrameworkSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  28. 28. Développement web avec ASP.NET et Visual Studio 2012 Propriétés des sources 28  Les sources de données permettent ou pas la modification, la suppression Module 6 - Développement d’Applications de ou l’insertion (EnableUpdate, EnableDelete et EnableInsert »  Les sources de données permettent un filtrage paramétré et Bases de Données éventuellement automatique  Une source peut avoir des paramètres dans les requêtes. Les paramètres commencent par le symbole « @ »  La valeur du paramètre peut être récupérée à partir d’un contrôle ou à partir de l’URL (chaîne de requête)Section 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  29. 29. Développement web avec ASP.NET et Visual Studio 2012 Tutoriel 6.3 : Connexion des contrôles aux bases de données 29 • Lancer Tutoriel 6.3, étape 1 et 2 Module 6 - Développement d’Applications de Bases de DonnéesSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  30. 30. Développement web avec ASP.NET et Visual Studio 2012 Les contrôles d’affichage 30  Pour les contrôles de BDD, il y a trois catégorie de contrôles : affichage Module 6 - Développement d’Applications de collectif, affichage individuel et utilitaire  Les contrôles d’affichages collectif permettent d’afficher plusieurs Bases de Données enregistrements (par exemple GridView et ListView)  Les contrôles d’affichage individuel permettent d’afficher un seul enregistrement à la fois  Les contrôles utilitaires permettent de fournir des fonctions telles que la pagination ou l’affichage de graphiquesSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  31. 31. Développement web avec ASP.NET et Visual Studio 2012 Principaux Contrôles d’Affichage 31 Composant Description GridView Permet d’afficher les enregistrements d’une manière tabulaire Module 6 - Développement d’Applications de ListView Permet d’afficher les enregistrements sous une forme personnalisée : les développeurs décident exactement quelles balises HTML sont générées pour un contrôle donné Bases de Données DetailsView Affiche les données d’un seul enregistrement sous forme tabulaire ou chaque ligne représente un champ. FormView Affiche les données d’un seul enregistrement sous forme personnalisée. En utilisant les modèles, le développeur décide de l’apparence du contrôle. DataPager Offre le mécanisme de pagination dans une page Chart Permet d’afficher des données sous forme graphiqueSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  32. 32. Développement web avec ASP.NET et Visual Studio 2012 Les modèles (Templates) 32  Souvent, les développeurs décident de personnaliser l’affichage des Module 6 - Développement d’Applications de contrôles  Un modèle (Template) est la façon d’afficher un champ ou un Bases de Données enregistrement ou la totalité du contrôle selon certaines conditions (en mode normal, en mode modification, en mode insertion, en mode alterné, lorsque les données sont vides,…)  Un template peut intégrer des balises HTML ou des contrôles ASP.NETSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  33. 33. Développement web avec ASP.NET et Visual Studio 2012 Affichage des données dans les modèles 33  Les données peuvent être affichées en lecture ou en lecture / écriture Module 6 - Développement d’Applications de  Pour afficher les données en lecture, l’expression « Eval » est utilisée  Par exemple : <%# Eval("Name") %> Bases de Données  Pour afficher les données en écriture / lecture, l’expression « Bind » est utilisée  L’expression « Bind » ne peut être utilisée que dans les contrôles permettant la modification. Par exemple « TextBox ».  Exemple : <%# Bind("Color") %>Section 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  34. 34. Développement web avec ASP.NET et Visual Studio 2012 Le contrôle ListView 34  Permet grâce aux templates, d’afficher les données sous forme Module 6 - Développement d’Applications de personnalisée  La propriété « DataSourceId » permet de connecter le contrôle à une Bases de Données source de données  La propriété « ItemTemplate » permet de définir comment un enregistrement est affiché  La propriété « LayoutTemplate » définit comment le cadre du contrôle est affichéSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  35. 35. Développement web avec ASP.NET et Visual Studio 2012 Tutoriel 6.3 : Utilisation du ListView 35 • Lancer Tutoriel 6.3, étape 3 Module 6 - Développement d’Applications de Bases de DonnéesSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  36. 36. Développement web avec ASP.NET et Visual Studio 2012 Le contrôle GridView 36  Affiche les données sous forme tabulaire Module 6 - Développement d’Applications de  Permet la modification / suppression sur place  Permet l’affichage des lignes en mode alterné Bases de Données  Affichage des enregistrements sous forme de ligne où chaque ligne est un ensemble de colonnesSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  37. 37. Développement web avec ASP.NET et Visual Studio 2012 GridView – Principale Propriétés 37 Composant Description DataSourceId Source de données Module 6 - Développement d’Applications de AllowPaging Permettre la pagination AllowSorting Permettre le tri en appuyant sur les entêtes de colonnes Bases de Données AutoGeneratedColumns Générer automatiquement les colonnes à partir des champs de la source Columns Edite la liste des colonnes de la grille GridLines Bordures du tableau à afficher ShowFooter Affichage du pied ShowEntêtes Afficher / Masquer les entêtes de colonnesSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  38. 38. Développement web avec ASP.NET et Visual Studio 2012 GridView – Types de colonnes 38 Composant Description BoundField Un champ simple, affiche du texte Module 6 - Développement d’Applications de CheckBoxField Affiche une case à cocher, idéale pour les champs booléens HyperLinkField Affiche un lien hypertexte Bases de Données ButtonField Affiche un bouton CommandField Ajoute une colonne de commande (par exemple, modifier ou supprimer TemplateField Affiche une cellule en utilisant un TemplateSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  39. 39. Développement web avec ASP.NET et Visual Studio 2012 Tutoriel 6.3 : Utilisation du GridView 39 • Lancer Tutoriel 6.4, étape 4 Module 6 - Développement d’Applications de Bases de DonnéesSection 3 : Connecter les Contrôles aux Bases de Données Copyright © 2013, Mostefai Mohammed Amine
  40. 40. Développement web avec ASP.NET et Visual Studio 2012 Exercice 40 Exercice 6.1 (Durée 1 h): Affichez un formulaire de recherche de clients dont les résultats sont affichés dans un « GridView »Module 6 - Développement d’Applications de Bases de Données Copyright © 2013, Mostefai Mohammed Amine

×