ASP.NET avec C# sous Visual Studio 2013

Download Report

Transcript ASP.NET avec C# sous Visual Studio 2013

ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
Visual Studio 2013 et .NET 4.5.1
1. Nouveautés de Visual Studio 2013
15
1.1 Installation
1.2 Interface du logiciel
1.2.1 La page de démarrage
1.2.2 Les fenêtres de Visual Studio
1.2.3 Les activités liées au développement
1.2.4 Les packages NuGet
1.2.5 Les tests codés d'interface utilisateur
1.3 Gestion du code
1.3.1 Le mode plan et les régions
1.3.2 La refabrication (refactoring)
1.3.3 Les extraits de code (code snippets)
1.4 Documentation
1.5 Contrôle du code source avec Visual Studio Online
1.6 L'outil MS Build
2. C#5 en bref
59
2.1 Classes partielles
2.2 Méthodes anonymes
2.2.1 Les événements internes
2.2.2 Les fonctions auxiliaires
2.2.3 Simplifier l'écriture du code
2.3 L'inférence de type
2.4 Les lambdas expressions
2.5 Classes dynamiques et types anonymes
2.6 Extension de classes sans héritage
2.7 Types nullables
2.8 Itérateurs
2.8.1 Itérateur en C#1
2.8.2 Itérateur à partir de C#3
2.9 Généricité
2.9.1 Définir un type générique
www.editions-eni.fr
17
18
18
20
26
35
37
41
42
43
44
47
48
57
© Editions ENI
60
61
61
64
66
68
68
69
70
71
72
73
74
75
75
1/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
2.9.2 Spécialisation partielle
2.9.3 Utilisation d'un type générique
2.9.4 L'espace de noms System.Collections.Generic
78
78
79
Les sites web ASP.NET 4.5.1
1. Le modèle de compilation
81
1.1 Du CGI au modèle ASP.NET 1.X
1.1.1 L'interface CGI
1.1.2 Les pages dynamiques ASP
1.2 Des classes partielles pour les pages
1.2.1 Structure d'une page ASPX 4.5.1
1.2.2 Modifications d'une page ASPX 4.5.1
1.3 Le code partagé dans App_Code
1.4 Les assemblages référencés
1.4.1 Références dynamiques
1.4.2 Références explicites dans le Web.config
1.5 Le cache de construction
1.6 Les applications web de Visual Studio
2. Le rôle du serveur web
96
2.1 Le serveur IIS
2.1.1 Le filtre ISAPI pour ASP.NET
2.1.2 Création d'un site web ASP.NET avec IIS
2.2 Le serveur de développement ASP.NET
2.3 D'autres serveurs
3. Le pipeline HTTP de IIS
96
96
97
99
101
101
3.1 Fonctionnement de IIS
3.1.1 Premiers pas sous HTTP avec Telnet
3.1.2 Détail du traitement IIS
3.2 La classe HttpContext
3.3 La classe HttpApplication
3.3.1 Cycle de vie de l'application
www.editions-eni.fr
81
82
85
87
87
89
89
92
92
93
94
94
© Editions ENI
101
101
103
105
106
106
2/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
3.3.2 Ajouter un Global.asax
3.3.3 Créer un module HTTP
3.4 Les gestionnaires (handlers) HTTP
3.4.1 Créer un handler ASHX
3.4.2 Créer un handler dans une DLL
107
111
113
114
117
Les Web Forms
1. Les Web Forms
121
1.1 Structure d'une page ASPX
1.1.1 Style imbriqué, en ligne et séparé
1.1.2 Les scriptlets
1.1.3 Hiérarchie des contrôles
1.1.4 Ajouter dynamiquement des contrôles
1.1.5 Objets intrinsèques
1.2 Cycle de vie d'une page
1.2.1 Le cycle nominal
1.2.2 Identifier les requêtes de type postback
1.3 Les contrôles web
1.3.1 Les balises HTML
1.3.2 L'attribut runat="server"
1.3.3 Les contrôles HTML
1.3.4 Les contrôles web
1.3.5 Les contrôles à base de modèles (template)
1.3.6 Les contrôles utilisateurs et les contrôles personnalisés
1.4 Navigation entre les pages
1.4.1 Les liens hypertextes
1.4.2 Redirections par serveur
1.5 Postback et cross postback
1.6 Les callback
1.7 Validation des entrées utilisateur
1.7.1 Principe de la validation
1.7.2 Les contrôles de validation
1.7.3 La validation personnalisée
www.editions-eni.fr
© Editions ENI
122
126
129
132
135
136
138
138
142
142
143
144
146
147
151
152
152
152
154
154
156
163
163
165
169
3/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
1.7.4 La validation discrète
170
2. Organiser la présentation
174
2.1 Thèmes et skins
2.1.1 Les feuilles de style CSS
2.1.2 Les thèmes
2.1.3 Les skins
2.2 Les contrôles utilisateurs .ascx
2.2.1 Créer un contrôle utilisateur
2.2.2 Utiliser un contrôle utilisateur
2.2.3 Ajouter des propriétés et des événements
2.3 Les master pages
2.3.1 Créer une page maître
2.3.2 Créer une page de contenu
2.3.3 Programmer les pages maîtres et les pages de contenu
2.3.4 Appliquer dynamiquement une page maître
3. Les composants personnalisés
197
3.1 Fonctionnement des composants personnalisés
3.1.1 Les types de composants personnalisés (custom controls)
3.1.2 Création d'une bibliothèque de composants
3.1.3 Mise au point du composant ColoredPad
3.1.4 Enregistrement et tests
3.2 NumericTextBox, un composant dérivé de TextBox
3.2.1 Création du contrôle
3.2.2 Propriétés et événements
3.2.3 Rendu
3.3 ChartControl, un composant graphique utilisant GDI+
3.3.1 Fonctionnement
3.3.2 Rendu
3.3.3 Intégration et tests
3.4 PictureBrowser, un composant basé sur un modèle
3.4.1 Fonctionnement
3.4.2 Implémentation du composant
3.4.3 Les modèles
www.editions-eni.fr
174
174
175
177
180
180
182
183
188
188
191
194
196
© Editions ENI
197
197
198
199
207
209
209
210
212
213
213
214
215
216
216
219
220
4/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
3.4.4 Le rendu
3.4.5 Les événements
3.4.6 Informations relatives à la conception dans Visual Studio
3.4.7 Utilisation du composant
3.5 Des ressources incorporées aux DLL
4. AJAX
230
4.1 Du callback à AJAX
4.2 Le gestionnaire de script ScriptManager
4.2.1 Utiliser ScriptManager avec des services web
4.3 Le composant UpdatePanel
4.3.1 Fonctionnement
4.3.2 Mise en œuvre
4.3.3 Gestion des erreurs
4.3.4 Les triggers
4.4 Le composant UpdateProgress
4.5 Le Timer
4.6 La programmation objet avec JavaScript
4.6.1 Insertion de code JavaScript dans une page
4.6.2 Créer des objets et des classes JavaScript
4.6.3 Le style AJAX
4.6.4 Des classes dérivées
4.6.5 Implémenter des interfaces
4.7 Le modèle d'extension AJAX
4.7.1 Structure du framework
4.7.2 La classe d'application
4.7.3 Les contrôles AJAX du toolkit
4.7.4 Définir des contrôles personnalisés en JavaScript
4.7.5 Des contrôles AJAX en C#
4.8 Introduction à jQuery
4.8.1 Installation
4.8.2 Parcourir le DOM
4.8.3 Intervenir sur la page
4.8.4 Les plugins
www.editions-eni.fr
221
224
225
226
228
© Editions ENI
230
231
232
235
235
235
237
239
240
241
242
242
243
247
248
249
250
250
252
255
259
265
269
269
270
272
274
5/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
Les sites web MVC
1. L'approche MVC
277
1.1 Le design pattern MVC
1.2 Les évolutions de MVC
277
279
2. Les sites ASP.NET MVC
279
2.1 Création d'un site
2.2 Organisation des répertoires
2.3 Création du modèle
2.4 Définition du contrôleur
2.5 Ajout des vues
279
280
282
285
287
3. Définition des routes
291
4. Aller plus loin
292
4.1 D'une action à l'autre
4.2 Mise à jour du modèle et redirection
4.3 Validation
5. Le moteur de rendu Razor et la compatibilité mobile
5.1 Basculer le site sur IIS standard
5.2 Les pages générées par Razor
5.3 Tester avec un émulateur Android
6. Les Single Page Applications SPA
292
298
298
300
300
302
305
307
6.1 Utiliser les Web API
6.1.1 Créer un projet Web API
6.1.2 Établir un modèle et un contrôleur
6.1.3 La page unique
6.2 Utiliser KnockOut pour la liaison de données
307
307
309
310
312
L’accès aux données avec ADO.NET 4.5.1
www.editions-eni.fr
© Editions ENI
6/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
1. Les bases d'ADO.NET
315
1.1 Le mode connecté
1.1.1 La connexion
1.1.2 La commande
1.1.3 Le DataReader
1.1.4 Les paramètres
1.1.5 Les transactions
1.2 Les bases de données SQL Server
1.2.1 Les déclinaisons du logiciel SQL Server
1.2.2 Création de bases
1.2.3 Création de tables
1.2.4 Les vues
1.2.5 Les procédures stockées
1.3 Rendre l'accès aux bases transparent
1.3.1 Le mode déconnecté
1.3.2 DataAdapter et TableAdapter
1.3.3 Le mapping objet relationnel et les frameworks spécialisés
1.3.4 Les fabriques ADO.NET
2. Accès aux données à base de fournisseurs
2.1 Introduction au développement par fournisseurs
2.1.1 Contrôles sources de données en mode fournisseur
2.1.2 Contrôles de présentation des données
2.2 Les sources SqlDataSource et AccessDataSource
2.2.1 La requête de sélection
2.2.2 Les requêtes de mises à jour
2.2.3 Les paramètres
2.2.4 Le cache
2.3 Le fournisseur ObjectDataSource
2.3.1 Le principe
2.3.2 Mise en œuvre
2.3.3 Paramètres de création
2.3.4 Gestion du cache
2.3.5 Une version avancée
www.editions-eni.fr
© Editions ENI
315
316
321
323
326
327
331
331
332
335
336
337
338
339
341
348
348
352
352
353
354
355
355
358
359
362
363
363
364
368
369
369
7/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
2.4 Le fournisseur XmlDataSource
2.5 LinqDataSource
2.5.1 Un DAO pour LinqDataSource
2.5.2 Le contexte de données dbml
2.5.3 Les événements de LinqDataSource
2.6 EntityDataSource
2.6.1 Le framework Entity
2.6.2 Créer le modèle conceptuel
2.6.3 Requêter avec LINQ to Entities
2.6.4 Mise en œuvre du composant EntityDataSource
3. Les composants graphiques de présentation des données
3.1 Le composant GridView
3.1.1 Présentation tabulaire des données
3.1.2 Les opérations de sélection et de navigation
3.1.3 Les clés et les opérations de mise à jour
3.1.4 Les formatages et les tris
3.1.5 Les colonnes modèles
3.1.6 La liaison bidirectionnelle
3.1.7 Gérer les jointures
3.2 Le composant DetailsView
3.2.1 Présentation du DetailsView
3.2.2 Les événements
3.3 Le composant FormView
4. Créer des états avec Reporting Services
4.1 Création d'un état
4.2 Le composant d'affichage
4.3 Les paramètres
376
380
380
382
386
387
387
389
394
396
398
398
399
402
404
405
407
408
409
414
414
414
415
416
416
418
420
Gestion de l'état
1. Les différents moyens pour maintenir l'état
1.1 Les champs cachés
www.editions-eni.fr
425
425
© Editions ENI
8/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
1.2 Le ViewState
1.2.1 Utiliser le ViewState dans un Web Form
1.2.2 Contrôler l'application du ViewState
1.3 La chaîne de requêtes (Query String) et les URI
1.4 Les cookies
2. Les sessions
431
2.1 Utilisation de l'objet Session
2.1.1 Mémorisation d'un objet et recherche
2.1.2 Initialisation de l'objet Session
2.1.3 Sécurisation du jeton de session
2.2 Sessions sans cookie et délai d'abandon de session
2.2.1 Sessions sans cookie
2.2.2 Timeout
2.3 Services de conservation des données en session
2.3.1 Le processus en mémoire InProc
2.3.2 Le service Windows ASP.NET State Service
2.3.3 Le service SQL Server
2.3.4 Services personnalisés
3. Les objets Application et Cache
431
432
432
433
433
433
434
434
434
436
437
438
439
3.1 L'objet Application
3.1.1 Utilisation
3.1.2 Verrouillage
3.2 Le cache de données d'applications Cache
3.2.1 Les dépendances de temps
3.2.2 Le callback
3.2.3 Les dépendances fichiers
3.2.4 Les dépendances SQL sous SQL Server
3.3 Le cache HTML
3.3.1 Cache de sortie
3.3.2 Fragments de pages en cache
3.3.3 Les substitutions
3.3.4 Les profils de cache
www.editions-eni.fr
426
427
428
429
430
© Editions ENI
439
439
439
440
440
442
443
444
450
450
452
453
454
9/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
Personnalisation et sécurisation
1. Sécurisation des sites ASP.NET
455
1.1 Le modèle de sécurisation du site
1.1.1 Les objets de la sécurité
1.1.2 L'authentification
1.1.3 Les autorisations
1.2 Sécurisation en mode Windows
1.2.1 Activation du mode d'authentification
1.2.2 Configuration de IIS
1.2.3 Autorisations
1.3 Sécurisation en mode Forms
1.3.1 Activation du mode Forms et création d'une page de connexion
1.3.2 Endossements de rôles
1.3.3 Le mode Forms sans cookie
1.3.4 Autorisations
1.4 Le fournisseur MemberShip
1.4.1 Fonctionnement du fournisseur
1.4.2 Utiliser AspNetSqlMembershipProvider
1.5 Sécurisation en comptes d'utilisateurs individuels
1.6 Le répertoire Account
1.7 Le référentiel local d'utilisateurs
1.8 Activer un référentiel externe
1.9 Le fournisseur de rôles
1.9.1 AspNetSqlRoleProvider
1.9.2 WindowsRoleTokenProvider
1.10 Les contrôles intégrés
2. Présentation personnalisée
488
2.1 Les profils utilisateur
2.1.1 Formation du profil
2.1.2 Utilisation du profil
2.1.3 Groupage et types complexes
2.2 Navigation au sein du site
2.2.1 Le fichier de définition du site
www.editions-eni.fr
455
455
456
458
459
459
460
461
462
462
465
467
467
467
468
470
473
475
477
480
485
485
486
487
© Editions ENI
488
488
489
490
492
492
10/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
2.2.2 Le fournisseur SitemapProvider, l'API Sitemap et le SitemapDataSource
2.2.3 Les contrôles associés à la navigation
2.2.4 Filtrer l'affichage selon le rôle de l'utilisateur
2.3 Internationalisation
2.3.1 Les ressources globales
2.3.2 Les ressources locales
2.3.3 Le composant Localize
2.3.4 Localisation des validations
3. Les WebParts
493
494
494
496
496
498
499
500
501
3.1 Du site Web au portail
3.2 Créer un portail
3.2.1 Le gestionnaire WebPartManager
3.2.2 Les zones WebPartZone
3.2.3 Les éléments WebPart
3.3 Les contrôles catalogues CatalogZone et PageCatalogPart
3.3.1 Le catalogue de zones
3.3.2 Un menu pour changer de mode
3.3.3 Donner des noms aux éléments
3.3.4 Les éditeurs
3.4 Créer des éléments personnalisés
3.4.1 Créer un WebPart à partir d'un composant utilisateur
3.4.2 Créer un WebPart personnalisé
3.4.3 Connecter les éléments
501
501
502
502
504
505
505
507
508
508
510
510
511
514
Les services Web WCF et REST
1. Les services Web WCF
519
1.1 Le dialecte commun SOAP
1.2 Créer un service Web WCF
1.2.1 Implémentation du service
1.2.2 Test du service
1.3 Consommer un service Web
1.3.1 Génération du proxy
www.editions-eni.fr
© Editions ENI
520
522
522
526
527
527
11/12
ASP.NET avec C# sous Visual Studio 2013
Conception et développement d'applications Web
1.3.2 Appel synchrone
1.3.3 Appel asynchrone
530
531
2. Les services Web REST
534
2.1 Implémentation d'un service REST
2.2 Utilisation d'un service REST
535
536
Configuration, déploiement et administration
1. Configuration
539
1.1 Héritage de la configuration
1.2 Configuration de test et de production
1.2.1 Le gestionnaire de configuration de Visual Studio
1.2.2 Plusieurs fichiers de configuration Web.config
1.2.3 Les pages d'erreurs du fichier Web.config
2. Déploiement des applications ASP.NET
539
541
541
543
543
544
2.1 Déploiement manuel
2.1.1 Création d'un répertoire virtuel
2.1.2 Sélection des fichiers à copier
2.1.3 La page par défaut
2.2 Déploiement par le système de copie
3. Supervision des applications ASP.NET
544
544
546
547
548
549
3.1 L'infrastructure de supervision Health Monitoring
3.1.1 La hiérarchie des événements web
3.1.2 La hiérarchie des fournisseurs
3.2 Mise en œuvre dans ASP.NET
3.2.1 Déclarer des événements
3.2.2 Déclarer des fournisseurs d'écoute
3.2.3 Ajouter des règles d'abonnement
549
550
550
551
551
551
552
Index
553
www.editions-eni.fr
© Editions ENI
12/12