Module ASP .NET 2 (C# et VB)

[ Retour Accueil ]

Développer des applications Web

Durée de réalisation estimée : 35H00

Objectifs

Public et pré-requis

Sommaire

Ce module se compose de 6 chapitres :

  1. Créer une application Web
  2. Les contrôles serveurs
  3. La gestion de l'état
  4. Développer une application Web
  5. Configurer et personnaliser une application ASP .NET
  6. Aller plus loin avec les ASP .NET
[ Commander (modules C#) ]     [ Commander (modules VB) ]

1. Créer une application Web

La conception de sites Internet a fondamentalement évolué depuis les débuts du Web, allant de la simple saisie de pages HTML statiques à de véritables applications Web avec les ASP .NET.

Ces dernières autorisent en effet la génération de pages dynamiques exécutées dynamiquement côté serveur, capables de réaliser des opérations complexes souvent associées à une base de données. En outre, la version 2.0 des ASP .NET qui nous concerne ici est probablement l’une des facettes du Framework qui évolue le plus, en nombre de classes nouvelles d’une part, mais également en maturité. Avec l'édition Web de Visual Studio 2005 (ou une édition supérieure), la puissance et la productivité sont donc encore une fois, au rendez-vous, à condition toutefois, d'investir le temps nécessaire pour faire connaissance avec les possibilités offertes et apprendre à en tirer le meilleur parti en fonction de vos besoins.

Dans un premier temps, la bonne nouvelle est que vous allez pouvoir appliquer toutes les connaissances acquises en matière de programmation .NET, puisque le développement ASP .NET se fonde entièrement sur le Framework .NET, avec une véritable programmation événementielle.

Ceci va donc nous permettre de nous concentrer sur les spécificités des applications Web, avec le modèle objet associé. Mais il est important d'avoir à l'esprit dès le départ qu'un site ASP .NET se conçoit désormais comme une application à part entière !

Scénario du chapitre

Ce chapitre a pour objectif de vous présenter les concepts fondamentaux relatifs au développement d’applications Web dans l’environnement .NET, avec la mise en place d'un projet de type ASP .NET.

Quelques rappels sur le fonctionnement du protocole HTTP ainsi que sur le fonctionnement des pages dynamiques ASP classiques seront d’abord proposés. Ils nous permettront d'observer les limitations de cette génération technologique et de mieux comprendre comment elles ont été contournées par les ASP.NET.

Nous ferons alors connaissance avec les différents outils proposés par Visual Studio 2005 pour concevoir une simple page .aspx, avant d'en étudier le cycle d'exécution. L'accent sera ensuite porté sur le fonctionnement des contrôles serveurs, qui seront détaillés au chapitre suivant.

Points abordés

[ Retour en début de page ]

2. Les contrôles serveurs

Connaissant à présent le principe de fonctionnement d'une page ASPX et des contrôles serveurs, intéressons-nous à présent à ces derniers, afin de commencer à construire des pages plus complètes.

Scénario du chapitre

Les contrôles disponibles dans l’espace de noms System.Web.UI sont scindés en deux familles. La première famille correspond aux contrôles HTML standard tandis que la seconde regroupe des contrôles riches tels que les contrôles de validation, le contrôle Calendar et les contrôles affichant des listes de données. Après avoir présenté la classe de base System.Web.UI.Control de tous les contrôles, nous parlerons des limitations des contrôles HTML, avant de détailler les contrôles Web usuels proposés par ASP .NET 2.0.

Points abordés

[ Retour en début de page ]

3. La gestion de l'état

Compte tenu de la nature dite sans état ("stateless"), du protocole HTTP, l'absence de mémorisation des données d’une requête à l’autre est l’un des points les plus importants à traiter. Nous connaissons déjà le mécanisme de préservation automatique de l’état des contrôles serveurs dans une page, mais nous allons voir dans ce chapitre, comment tirer parti des différents mécanismes chargés de mémoriser des données d'une page à l'autre, notamment au niveau de la session utilisateur et de l’application.

Scénario du chapitre

Une application Web étant fondée sur le protocole HTTP, nous commencerons par faire connaissance avec les classes exposant les membres nécessaires au contrôle des opérations réalisées à ce niveau.

Les différentes techniques autorisant la mémorisation des données dans une application ASP .NET seront présentées ensuite avec des petits exemples simples à réaliser, indépendants les uns des autres. Nous serons alors prêts à concevoir une véritable application que nous commencerons à mettre en place au chapitre suivant.

Points abordés

[ Retour en début de page ]

4. Développer une application Web

Connaissant à présent le principe des Web Forms et des mécanismes fondamentaux des ASP .NET, nous allons maintenant pouvoir tirer pleinement parti des possibilités offertes par les ASP .NET 2.0 pour réaliser une application Web complète.

Dans ce domaine, les nouveautés sont légion ! À vrai dire, presque toutes les notions qui vont être abordées dans ce chapitre sont des apports du Framework 2.0, lequel s’attaque à tous les versants du développement d’applications Web allant de l’interface utilisateur avec les pages maîtres, jusqu’aux accès aux bases de données, en passant par les mécanismes d’authentification. L’idée n’est pas de complexifier les choses, mais au contraire de gagner en productivité, tout en écrivant moins de code.

Scénario du chapitre

Pour illustrer les différents points qui vont être présentés, l’idée désormais classique du site de e-commerce s’est naturellement imposée. L'intérêt de ce type d’application est double : d'une part son principe est bien connu et d'autre part, il est tout à fait représentatif des différentes facettes d’une application Web standard. Nous allons donc reprendre le thème de l’agence de voyages qui nous a servi dans le module consacré aux ADO, afin de proposer un catalogue en ligne autorisant une sélection d'articles et la gestion d'un panier de commande.

Compte tenu du nombre d'éléments dont nous allons avoir besoin, nous développerons cette application en deux temps. Dans ce chapitre, nous viserons une première version permettant de mettre tous les éléments en place, jusqu'à la procédure d'enregistrement des réservations de manière simplifiée. Nous verrons aux chapitres suivants comment finaliser les choses avec notamment la gestion des utilisateurs avec la classe MemberShip et une architecture en couches. De même, plusieurs contrôles présentés dans ce chapitre seront présentés de manière plus approfondie dans les chapitres suivants.

Dans ce chapitre, nous commencerons par définir la structure générale du site, avec sa charte graphique et son système de navigation.

Une fois l’interface utilisateur en place, nous aborderons les éléments fonctionnels de l’application. Après avoir créé quelques pages simples, comme un formulaire de contact, nous détaillerons le cœur du métier du site, à savoir la présentation d’un catalogue de voyages en ligne, avec la gestion d’un panier chargé de mémoriser la sélection des offres choisies par l’utilisateur.

Notre progression de développement sera donc similaire à celle de l'utilisateur, en partant de la page d'accueil, jusqu'à la procédure d'enregistrement d'une réservation après avoir sélectionné des articles.

Pour ce faire, nous utiliserons une base Access sachant qu'une connaissance des objets ADO est utile, mais pas nécessaire. C'est en effet dans les chapitres suivants que nous approfondirons la partie concernant les accès aux données avec une base SQL Server.

Nous verrons également comment mettre en place un backoffice, c'est-à-dire une partie non publique du site, afin que les personnes habilitées par l'agence soient en mesure de mettre à jour le catalogue. Ceci nous amènera à parler des mécanismes de sécurité offerts par les ASP .NET pour authentifier un visiteur et définir ses droits.

Aperçu du site web final

Points abordés

[ Retour en début de page ]

5. Configurer et personnaliser une application ASP .NET

Ce chapitre se compose de 2 parties principales. Nous commencerons par approfondir les possibilités de configuration proposées pour une application ASP .NET, notamment vis-à-vis du serveur Web IIS. Nous serons ensuite mieux armés pour étudier la gestion des utilisateurs et des rôles, avec la notion de MemberShip.

La suite du chapitre se propose de découvrir les différents moyens de personnaliser un site. Certains sites communautaires ou de vente en ligne majeurs ont en effet initié une nouvelle tendance pour améliorer encore l’expérience de navigation de leurs visiteurs : cette approche – que vous retrouvez sur des sites tels que www.google.com (rubrique Accueil personnalisé) ou sur www.live.com de Microsoft – consiste à permettre au visiteur de personnaliser sa propre vision du site. Cela reposant parfois sur le simple changement des couleurs, voire de la charte graphique entière, mais pouvant aller jusqu’à la modification de l’agencement des blocs de contenu, ou à l’ajout de blocs entièrement personnalisables souvent appelés « gadgets » ou widgets. Il était inévitable que, pour répondre à la demande des développeurs, ASP .NET intègre les outils nécessaires ; ce chapitre vous en dira plus sur ces nouveaux concepts.

Scénario du chapitre

Pour illustrer la plupart de ces concepts, nous allons faire évoluer l'application V2010 telle que nous l'avons préparée au chapitre précédent.

Quelques exemples seront néanmoins proposés dans des petits projets annexes afin de ne pas surcharger l'exemple.

Points abordés

[ Retour en début de page ]

6. Aller plus loin avec les ASP .NET

Malgré l'ensemble des facilités offertes par les ASP 2, un certain nombre de points doivent être assimilés avant d'aborder le développement d'applications professionnelles. L'objectif de ce chapitre est donc de fournir les notions essentielles qui vous permettront de faire face aux scénarios les plus courants, en commençant par détailler le mécanisme de DataBinding.

Nous approfondirons ensuite notre étude des listes de données, avec la programmation du GridView puis la mise en œuvre des contrôles Repeater et DataList qui peuvent se révéler très utiles pour des scénarios plus simples.

Nous abandonnerons ensuite un peu la technique pour parler des avantages proposés par le modèle d'architecture en couches.

Nous terminerons par les techniques d'optimisations offertes par les ASP 2, avec quelques recommandations.

Scénario du chapitre

Nous reprendrons l'idée du scénario du chapitre précédent, qui consistait à présenter le maximum de points avec notre application V2010 et de faire des petits projets annexes pour présenter les points complémentaires.

Points abordés

[ Retour en début de page ]