Rappels des concepts liés à l'Internet/Intranet et technologies .NET
Architecture d'une application Internet/Intranet, rappel des méthodes HTTP.
Technologies .NET. Application Web en .NET.
Outils intégrés à Visual Studio.
Travaux pratiques :
Utilisation de Visual Studio pour la création d'un site.
Fonctionnement des pages ASP.NET
Principe des pages ASP.NET, cycle de vie.
Utilisation des contrôles serveur WebForms. Intégration dans les pages ASPX avec Visual Studio.
Gestion automatique de la persistance de l'état des contrôles serveur avec le ViewState.
Gestion de la persistance des données applicatives : Session, Cache, Application, Cookies.
Membres caractéristiques des classes page, HttpRequest, HttpResponse et HttpServerUtility.
Utilisation et limitations du QueryString.
Mise en oeuvre du CrossPagePostBack.
Gestion des événements dans les pages ASP.NET et cycle de vie : Load, UnLoad, PreRender...
Gestion des événements de l'application : fichier global.asax, événements importants, utilisation.
Structuration d'une application Web avec Visual Studio (dossiers spéciaux, ressources, etc.)
Travaux pratiques :
Ecriture des premières pages ASP.NET basées sur des contrôles serveur standard (listes, boutons, etc.) et gérant des événements. Mise en oeuvre des mécanismes nécessaires aux applications professionnelles (session, cookie, etc.).
Contrôles serveur
Utilité des contrôles serveur HTML pour la création de pages actives côté client et serveur.
Intégration des contrôles serveur HTML avec les scripts clients JavaScript/jQuery.
Principe des contrôles serveur.
Contrôles conteneur : Panel, MultiView, Wizard...
Contrôles riches : Calendar, AdRotator, FileUpload...
Contrôles de validation et groupe de validation.
Validation à l'aide des DataAnnotations des entités.
Travaux pratiques :
Utilisation des contrôles serveur HTML afin de rendre une page dynamique, du côté client et du côté serveur. Mise en oeuvre des contrôles de validation côté client et côté serveur avec les contrôles Wizard. Exemple du contrôle FileUpload... Mise en oeuvre de l'Ajax simplement, avec UpdatePanel.
Conception de la structure d'un site Web
Contrôles utilisateur pour la structuration des pages.
Mise en forme d'un site à l'aide des MasterPages.
Rôles des dossiers spéciaux (App_Code, App_Data, App_Themes, etc.).
Utilisation des feuilles de style CSS et des thèmes.
Mise en place d'un système de navigation avec un fichier SiteMap et des contrôles SiteMapPath, TreeView et Menu.
Travaux pratiques :
Exemple de réalisation d'une application de e-commerce, réalisation d'un contrôle utilisateur, utilisation de pages maîtres.
Sources de données
Tour des différents moyens d'accès aux données avec ASP.Net Web Forms : ADO.Net, TableAdapters, Linq To SQL et Entity Framework.
Mécanismes d'accès à une BD : connexion, instruction SQL, procédure stockée, lecture.
Mécanisme de DataBinding.
Utilisation des contrôles liés à une source de données : XmlDataSource, GridView (tri et pagination).
Afficher une vue Maître/Détail entre un contrôle GridView et les contrôles DetailsView, FormView.
Principes des modèles de lignes (Templates).
Le Model Binding à partir d'ASP.Net 4.5 : concevoir ses pages Web Forms en respectant une séparation de type Model-Vue-Controler.
Travaux pratiques :
Utilisation des contrôles DataSource (SqlDataSource, EntityDataSource, ...), des GridView, ListView et DetailsView pour présenter les données d'entreprise (par exemple les articles d'un catalogue d'un site de e-commerce).
Gestion de la sécurité
Les types d'attaques (SQL injection, spoofing, répudiation...) et les moyens de s'en prémunir.
Contrôle applicatif des accès et des droits.
Gestion de la sécurité basée sur Windows.
Configuration et déploiement
Gestion des exceptions.
Rôle et format du fichier Web.config.
Sauvegarde des paramètres de l'application.
Configuration de la gestion des sessions.
Le mode Release. Publication de l'application.
Utilisation des services Web
Principe. Architecture, communication XML/SOAP/JSON, méta-données WSDL.
Appel d'un service Web à partir d'une requête HTTP et d'un proxy.
Travaux pratiques :
Démonstration d'un Web Service simple (recherche dans une base de données) et interrogation via ASP.NET et un proxy.