SlideShare una empresa de Scribd logo
1 de 39
Descargar para leer sin conexión
INTRODUCTION À
PRÉPARATION À LA CERTIFICATION MCPD 70-562
2012/2013
Abdelouahed sabri
abdelouahed.sabri@gmail.com
OBJECTIFS
 Comprendre
 Le fonctionnement du Framework .Net
 Les principes de base de ASP.NET
 Faire la différence entre Page web Classiques et
pages ASPX crées avec ASP.NET
2
FRAMEWORK .NET
 Framework .Net
 Le Framework .NET consiste en une collection de librairies
DLL (Dynamic Link Library) librement distribuable et un
environnement d’exécution (un Run-time)
 Les programmes s’exécutant sous contrôle de l’environnement .NET.
 Ceci est appelé Mode Géré ou Managé (managed code).
 Il Comprend un ensemble de classes qui peuvent être
utilisées par tous les langages prenant en charge
l’architecture .NET
NB: cette couche Windows est directement incorporée dans
le noyau des nouvelles versions de Windows
3
FRAMEWORK .NET
 Spécifications:
 Managed Code (code managé):
 C’est un code source qui s'exécute sous la gestion de la machine
virtuelle framework .NET et qui est appelée CLR (Common
Language Runtime)
 Tous les compilateurs de langages .Net génèrent un code
intermédiaire appelé IL (Intermediate Language).
 Contrairement au Unmanaged code (code non géré ou bien code
natif) qui est un code source exécuté directement par le
processeur (comme pour le cas de C)
4
FRAMEWORK .NET
 Spécifications:
 CLR (Common Language Runtime):
 Fournit des services aux programmes qui s’exécutent sous son contrôle.
Ces services assurent:
 Le chargement (load) et l’exécution contrôlée des programmes
 Les vérifications de type lors des appels de fonctions
 La conversion de code intermédiaire en code natif lors de l’exécution
des programmes, opération appelée JIT (Just In Time Compiler)
 La gestion automatique de la mémoire avec ramasse-miettes
(garbage collector)
 L’adaptation automatique des programmes aux caractéristiques
nationales (langue, représentation des nombres et des symboles, etc.)
 La compatibilité avec les DLL et les modules COM actuels qui
s’exécutent en code natif non contrôlé par .NET en utilisant le
P/invoke
5
FRAMEWORK .NET
 Spécifications:
 Compilation en MSIL (Microsoft Intermediate Language):
 Lors d'une compilation destinée à produire un code managé, le
compilateur convertit le code source en langage intermédiaire,
appelé MSIL
 MSIL: Un jeu d'instructions indépendant du processeur qui est
converti (par la suite) efficacement en code natif
6
FRAMEWORK .NET
 Spécifications:
 La compilation JIT (Just-In-Time compiler):
 La JIT convertit à la demande le code en langage MSIL (juste le
code appelé) en code natif au moment de l'exécution de
l'application.
 Elle tient compte du fait qu'une partie du code ne sera peut-être
jamais appelée au moment de l'exécution. Alors, au lieu de
consacrer du temps et des ressources mémoire à la conversion de
toutes les instructions MSIL d'un fichier exécutable portable (PE)
en code natif, elle les convertit au fur et à mesure des besoins au
moment de l'exécution et stocke le code natif obtenu en mémoire
afin qu'il soit accessible pour les appels ultérieurs dans le contexte
de ce processus.
7
FRAMEWORK .NET
 Spécifications
 P/Invoke:
 P/Invoke (Platform Invocation Services) de Microsoft est une
spécification de l'implémentation de CLI (Common Language
Infrastructure ) qui permet au managed code d'appeler du code natif
dans les DLL
 Quand P/Invoke est utilisé, le CLR gère le chargement des DLL et la
conversion des types en types CTS (Common Type System). Pour
réaliser cela, le CLR effectue les étapes suivantes :
 Localiser l'emplacement de la DLL qui contient la fonction
recherchée
 Charger la DLL en mémoire
 Trouver l'adresse en mémoire de la fonction et ajouter ses arguments
dans la Pile d'appel
 Convertir les types de données de .NET en un autre type
8
FRAMEWORK .NET
 Spécifications
 L’infrastructure CLI (Common Language Infrastructure ):
 Une spécification ouverte développée par Microsoft pour sa plate-
forme .NET qui décrit l'environnement d'exécution de la machine
virtuelle
 L'implémentation de la CLI inclut des fonctions pour gérer les
erreurs, le ramasse-miettes, la sécurité et l'interopérabilité avec
le système d'exploitation (les objets COM pour Microsoft window,
gtk pour Mono de novell)
9
FRAMEWORK .NET
 Spécifications:
 CTS (Common Type System):
 Est un standard (norme) qui spécifie comment les
définitions de Type et les valeurs spécifiques des Types sont
représentés dans la mémoire de l'ordinateur.
 Il est destiné à permettre à des programmes écrits dans des
langages de programmation différents (dans la famille des
langages .Net) pour échanger facilement des informations.
 Il est utilisé dans les langages de programmation;
 Un type CTS peut être décrit comme la définition d'un
ensemble de valeurs (par exemple, « tous les entiers
compris entre 0 et 10 »), et les opérations permises sur
ces valeurs (par exemple, l'addition et la soustraction).
10
MICROSOFT .NET
 Les langages:
 La puissance de l’architecture .NET réside dans le fait que
l’utilisateur peut changer librement d’un langage de
développement à un autre sans à réécrire le code.
 On peut bien développer une partie dans un langage et une autre
partie dans un langage différent.
 les langages .NET doivent présenter des caractéristiques
communes:
 Le type de données est définit par le CTS (Common Type
System),
 L’utilisation des classes, et ainsi des objets, doit être de la
même manière,
 les langages .NET produisent un code managé 11
MICROSOFT .NET
 Les langages:
 Dans sa première version, Microsoft a présenté, d'entrée,
quatre langages compatibles .Net :
 C# (C sharp): le langage .NET vedette de Microsoft. Il a été proposé
pour faire face au succès de Java.
 VB.Net: la version orientée objet pour les développeurs VB6
 J# (version .Net de J++, le clone avéré de Java)
 délaissé
 C++/CLI pour les développeurs C++.
 Au fil des années, ils se sont ajoutés, par Microsoft, les langages
JScript.Net et Windows PowerShell et ASP.Net qui ouvre aux
langages .Net le monde du développement Web.
12
MICROSOFT .NET
 Les langages:
 Les langages .Net crées des programmes:
 Pour le mode console (non graphique),
 Des applications pour interface graphique Windows,
 Des application pour des « Smart Devices »,
 Des application pour le Web
 Coté serveur avec ASP.NET,
 Coté client avec Silverlight ou JavaScript.NET
 Des applications Windows avec effets d’animation (WPF, Windows
Presentation Foundation),
13
MICROSOFT .NET
 Les langages:
 Non Microsoft
 La publication par Microsoft de toute la documentation nécessaire
pour permettre à d’autre fournisseurs de compilateurs de livrer des
versions .NET de leur produit a ouvert la voie à plusieurs
implémentations tierces d'autres langages en .NET.
on peut citer :
 Python : IronPython project,
 Pascal : Turbo Delphi for .NET,
 Smalltalk: #Smalltalk
 Perl: PerlNET
 …
14
 Un programmeur qui utilise un langage supportant le .NET peut a
tout moment utiliser un autre langage .NET qui lui parait
approprier à certaines parties de son application.
Code C#
Code
VB.NET
Compilateur
Common Language Infrastructure
Common
Intermediate
Language
Common
Language
Runtime
0101010101110001100
1100011011000101111
Compilateur
Langages compatibles
.NET sont compilés en un
deuxième langage neutre
appelé CIL
Le CLR compile le code
CIL en code-machine qui
peut être exécuté sur la
plateforme courante
15
MICROSOFT .NET
 ASP.NET
 Le développement Web est plus facile: les applications Web
sont développées comme des applications Windows en
utilisant le modèle ASP.net: insertion du code (codebehind)
C# ou VB.net dans des pages HTML (ajouter du JavaScript)
est envoyé au client
 On dit que le C# et/ou VB.NET sont utilisés pour
modifier le HTML
16
DÉVELOPPEMENT WEB
 Les échanges Web se font en mode client-serveur
A.Les clients envoient des requêtes
 Un client désigne un ordinateur personnel ou un appareil
individuel ( téléphone, tablette) sur lequel est exécuté le
logiciel client (navigateur)
B.Les serveurs attendent les requêtes des clients et y
répondent
 Le serveur désigne un ordinateur (de grande capacité) sur
lequel est exécuté le logiciel serveur
17
DÉVELOPPEMENT WEB
 Architectures dans l’environnement client-serveur
 Architecture centralisée:
 Client et serveur sur la même machine
 Architecture client-serveur, notée 2-tiers:
 Serveur sur une machine distante et les clients peuvent y accéder
utilisant un programme client
 Exemple: un serveur Web qui contient plusieurs logiciels qui
fonctionnent en parallèle: IIS (serveur HTTP), SQL Server(serveur
de base de données) et ASP.NET
 Architecture 3-tiers:
 Un client ( l'ordinateur demandeur de services) équipé d'une interface
utilisateur (généralement un navigateur web) chargé de la
présentation
 Un serveur d'application ( appelé middleware) qui fournit la ressource,
mais en faisant appel à un autre serveur
 Sur le serveur: serveur HTTP et ASP.NET
 Un serveur de données qui fournit au serveur d'application les données
requises pour répondre au client
 Sur le serveur: SQL Server
18
DÉVELOPPEMENT WEB
 Eléments intervenants dans une applications Web:
 Serveur:
 Ordinateur contenant des informations (des pages) consultables à
distance.
 Identifié par une adresse IP et/ou un nom de domaine (URL)
 Serveur HTTP,
 IIS (Internet Information Server), Apache, …
 Navigateur Web,
 Mozilla Firefox, Google Chrome, Internet Explorer, Netscape, …
 Protocole de communication
 HTTP: Protocole régissant la communication entre les clients et
serveurs Web
 Il fonctionne en mode client/serveur
 Port :80 (en général)
 HTTPS: HTTP sécurisé. Utilise le port 443
19
DÉVELOPPEMENT WEB
 Comment naviguer sur le
Web?
I. Utiliser un navigateur
II. Spécifier une adresse URL
 URL: adresse (IP ou nom) d’un
serveur (site) Web (HTTP)
+ adresse d’un ressource sur le
site
Exemple:
http://msdn.microsoft.com/fr-
fr/asp.net/centrum-asp-net.aspx
III. Le navigateur :
 Télécharge le document
correspondant à l’URL
 Interprète et affiche le contenu
20
DÉVELOPPEMENT WEB
 Pages statiques
 Pages dont le contenu ne change pas
 Elles peuvent contenir du texte, des animations flash,
de la musique, des vidéo ….
 Page dynamique
 Des pages Web dont le contenu change suite à une
action du visiteur
Les pages sont construites « à la volée » à la demande.
21
DÉVELOPPEMENT WEB
 Pages Web dynamiques
 Fonctionnement:
 Lors de la consultation d'une page Web dynamique,
un serveur HTTP transmet la requête au logiciel
correspondant, et ce logiciel se charge de générer et envoyer
le contenu de la page
 On peut faire appel au CGI (Common Gateway Interface)
 Les logiciels générant des pages Web dynamiques sont
souvent écrits avec les langages
 Coté serveur: ASP.NET, PHP, JSP (Java Server
Pages), ASP (Active Server Pages)
 Coté client: Silverlight, JavaScript
22
DÉVELOPPEMENT WEB
 CGI (Common Gateway Interface)
 Une interface utilisée par un serveur HTTP pour exécuter
un programme résidant sur le serveur
 Ce programme génère des pages HTML à la volée à partir du
résultat des exécutions
 Ce programme permet de:
 Récupérer des données à partir d’un formulaire
 Effectuer des traitements sur le serveur
 Lecture/écriture dans une base de données
 Stockage d’informations: compteurs, identifiants, IP, …
 Un programme CGI s’exécutant sur la machine hébergeur
peut être un fichier binaire (exe, en langage compilé: C,
Perl, Python, VB), un script (code interprété: PHP, ASP) ou
semi interprété (ASP.NET, JSP) 23
PROGRAMMATION WEB AVEC ASP.NET
 Outils:
 Serveur: IIS (Internet Information Server),
 On peut utiliser Apache  Projet Mono
 IDE: « Visual Web Developer Express Edition» ou bien
«Microsoft Visual Studio »
 Il y a d’autres IDE :
 QuickSharp , Webmatrix, …
 Navigateur: Google chrome, Internet Explorer, Mozilla
FireFox
 Pré-Requis:
 Une bonne connaissance de HTML
 Des connaissances de base en C# 24
ASP.NET
 Vue utilisateur (navigateur)
IIS
(Internet Information Server)
Client
Serveur
Requéte:
http://www.msn.com/default.aspx
Réponse:
<html>…</html>
Réseau
Protocole:
HTTP
TCP/IP
PC/Mac/Unix
+ Navigateur
25
ASP.NET:
VUE D'ENSEMBLE ET CARACTÉRISTIQUES
 ASP.NET fournit des services pour permettre la création, le
déploiement et l'exécution des Applications Web et des services
Web
 Les applications Web sont construites en utilisant les Web Forms
 Web Forms sont conçus pour rendre la création d’applications
Web aussi facile que la création des applications Visual Basic
 Applications sont basées sur le Framework .NET  tout langage
de programmation NET peut être utilisé (C #, Visual Basic)
 Modèle objet complet
 Séparation entre le code et l'interface utilisateur
 La gestion des sessions
 La mise en cache, débogage, Extensibilité
26
ASP.NET
 1ére application
 Lancer MS Visual Studio (ou bien MS Visual Web Developer)
 Menu fichier  Nouveau site Web
 Choisir Visual C#  Web  Application ASP.NET
 Configurer les informations: Nom, Emplacement (Local,
HTTP ou FTP)
27
 Dans l’explorateur de solution on aura:
– Default.aspx: la page web. Disponible en deux modes
d’affichage: « Concepteur de vues » et « Balisage »
– Bouton droit sur « Default.aspx » et « Afficher le
balisage » ou « Concepteur de vues »
– Default.aspx.cs: le code behind (code C# exécuté sur
le serveur)
– Web.config: fichier de configuration de l’application
ASP.NET
1ÉRE APPLICATION
 Default.aspx:
La directive Page précisant les
informations nécessaires à ASP.NET
pour traiter ce fichier
Les directive ASPX sont entre
<%@ et %>
La directive DOCTYPE qui précise
l'URI pour la DTD, qui définit le
vocabulaire XHTML.
L'attribut xmlns qui spécifie
l'espace de noms XML pour le
document.
runat="server" indique que ASP.NET traite l'élément et ses
éléments imbriqués et génère le code XHTML correspondant
28
ASP.NET
1ÉRE APPLICATION
 Default.aspx
 Si on travaille avec VB.net, la directive Page sera la
suivante:
<%@ Page Language="vb" AutoEventWireup="true"
CodeFile="Default.aspx.vb" Inherits="_Default" %>
 Quand AutoEventWireup est en TRUE, ASP.NET traite
automatiquement toute méthode dont le nom est
Page_eventName comment un événement
29
ASP.NET
1ÉRE APPLICATION
 Modification:
 On peut modifier les propriétés de la page Web de
deux manières:
<head runat="server">
<title>Ma premiére page ASPX</title>
</head>
1. Directement dans le mode
balisage
2. Utilisant les propriétés du
DOCUMENT
30
ASP.NET
1ÉRE APPLICATION
 Modification (suite):
 Différence entre contrôles ASP.NET et HTML
 Ajouter un titre <h2>
 Ajouter une étiquette « label » directement dans le code HTML
 Ajouter une étiquette à partir de la boite à outils
31
<body>
<form id="form1" runat="server">
<div>
<h2> le frameWork .net</h2>
<label id="LblHTM"> Lable HTML</label>
<p>
<asp:Label ID="Label1" runat="server" Text="Label ASP" ></asp:Label>
</p>
</div>
</form>
</body>
– La balise asp indique que l’étiquette est un contrôle ASP.NET et pas un
élément XHTML
ASP.NET
1ÉRE APPLICATION
 Modification
 La modification du contrôle ASP.NET est plus simple:
fenêtre Propriétés
<body>
<form id="form1" runat="server">
<div>
<h2> le frameWork .net</h2>
<label id="LblHTM"> Lable HTML</label>
<p>
<asp:Label ID="Label1" runat="server" Text="Label ASP"
BorderColor="#FF3300"
BorderStyle="Dashed" Font-Size="Large"
ForeColor="#3366CC"></asp:Label>
</p>
</div>
</form>
</body>
</html>
32
ASP.NET
1ÉRE APPLICATION
 Modification (suite):
 Code HTML envoyé au client (navigateur):
33
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
Ma premiére page ASPX
</title></head>
<body>
<form name="form1" method="post" action="Default.aspx" id="form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE"
value="/wEPDwUJODExMDE5NzY5ZGQcf4hA8Ern83MUMx+7p/3Vl5XGMg=="
/>
</div>
<div>
<h2> le frameWork .net</h2>
<label id="LblHTM"> Lable HTML</label>
<p>
<span id="Label1" style="display:inline-block;color:#3366CC;border-
color:#FF3300;border-style:Dashed;font-size:Large;">Label ASP</span>
</p>
</div>
</form>
</body>
</html>
Seuls les éléments marqués dans le fichier ASPX avec runat="server"
sont modifiés et remplacés dans le XHTML généré
Le formulaire contient une balise span pour représenter le texte de
l'étiquette ASP.NET «Label1». Les Propriétés de formatage du
l’étiquette sont convertis dans l'attribut style de l'élément span.
Des composantes Non visuelles sont ajoutées au formulaire , appelées hidden
inputs, enregistre les données invisible à l’utilisateur
34
ASP.NET
1ÉRE APPLICATION
 Code Behind
 C’est le code dans lequel on écrira les instructions qui seront
exécutées sur le serveur comme, par exemple, récupérer une
valeur, changer un attribut dynamiquement, créer un objet ….
 Dans la page Defalut.aspx.cs
using System;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
} 35
ASP.NET
1ÉRE APPLICATION
 Relation entre un fichier ASPX et le fichier code
behind
 Le fichier code-behind hérite de Page, qui définit la
fonctionnalité générale d'une page web.
public partial class _Default : System.Web.UI.Page
 Le fichier code-behind contient une classe partielle
 La première fois que la page web est demandée, cette classe
est compilé et une instance est créée
 Cette instance représente notre page – le code XHTML est
généré XHTML est envoyé au client
 Une fois une instance de la page Web a été créé, plusieurs
clients peuvent l'utiliser pour accéder à la page – aucune
recompilation est nécessaire. 36
ASP.NET
1ÉRE APPLICATION
 Evénement
 Ajouter un bouton ASP.net
 Et ajouter l’événement onclick
37
<asp:Button ID="Button1" runat="server" onclick="Button1_Click"
Text=" Date" />
protected void Button1_Click(object sender, EventArgs e)
{
Label1.Text = DateTime.Now.ToString();
}
 Code ASPX
 Code behind ASPX.CS
ASP.NET
1ÉRE APPLICATION
 Code Behind:
using System;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = DateTime.Now.ToString();
}
}
Extrait la date courante et l’affecte à
la propriété texte du label ASP.NET
38
ASP.NET
1ÉRE APPLICATION
 À Faire
 Créer une application Web qui simule une
calculatrice: somme, soustraction, multiplication et
division.
39

Más contenido relacionado

La actualidad más candente

Développement d'un forum de discussion
Développement d'un forum de discussionDéveloppement d'un forum de discussion
Développement d'un forum de discussionYoussef NIDABRAHIM
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services webCHOUAIB EL HACHIMI
 
Systèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introductionSystèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introductionLilia Sfaxi
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLwebreaker
 
Conception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIREConception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIREGhizlane ALOZADE
 
cours j2ee -présentation
cours  j2ee -présentationcours  j2ee -présentation
cours j2ee -présentationYassine Badri
 
Tp1 - WS avec JAXWS
Tp1 - WS avec JAXWSTp1 - WS avec JAXWS
Tp1 - WS avec JAXWSLilia Sfaxi
 
Fondamentaux java
Fondamentaux javaFondamentaux java
Fondamentaux javaInes Ouaz
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...ENSET, Université Hassan II Casablanca
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Heithem Abbes
 
applications-reparties
applications-repartiesapplications-reparties
applications-repartiesmourad50
 

La actualidad más candente (20)

Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka StreamsTraitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
 
Développement d'un forum de discussion
Développement d'un forum de discussionDéveloppement d'un forum de discussion
Développement d'un forum de discussion
 
Tp java ee.pptx
Tp java ee.pptxTp java ee.pptx
Tp java ee.pptx
 
Tp4 - PHP
Tp4 - PHPTp4 - PHP
Tp4 - PHP
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services web
 
Support Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFISupport Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFI
 
Systèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introductionSystèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introduction
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
 
Conception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIREConception et Réalisation d’une application de Gestion SCOLAIRE
Conception et Réalisation d’une application de Gestion SCOLAIRE
 
Cours php
Cours php Cours php
Cours php
 
cours j2ee -présentation
cours  j2ee -présentationcours  j2ee -présentation
cours j2ee -présentation
 
Tp1 - WS avec JAXWS
Tp1 - WS avec JAXWSTp1 - WS avec JAXWS
Tp1 - WS avec JAXWS
 
Fondamentaux java
Fondamentaux javaFondamentaux java
Fondamentaux java
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
 
Support programmation orientée objet c# .net version f8
Support programmation orientée objet c#  .net version f8Support programmation orientée objet c#  .net version f8
Support programmation orientée objet c# .net version f8
 
Tp2 - Latex
Tp2 - LatexTp2 - Latex
Tp2 - Latex
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)
 
Support JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVCSupport JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVC
 
applications-reparties
applications-repartiesapplications-reparties
applications-reparties
 
Développement d'un site web de E-Commerce avec PHP (Première Partie)
Développement d'un site web de E-Commerce avec PHP (Première Partie)Développement d'un site web de E-Commerce avec PHP (Première Partie)
Développement d'un site web de E-Commerce avec PHP (Première Partie)
 

Destacado

Bases de données réparties
Bases de données répartiesBases de données réparties
Bases de données répartiesAbdelouahed Abdou
 
Ajax (Asynchronous JavaScript and XML)
Ajax (Asynchronous JavaScript and XML)Ajax (Asynchronous JavaScript and XML)
Ajax (Asynchronous JavaScript and XML)Abdelouahed Abdou
 
Pl/sql - interaction avec la base de données & structures de contrôle
Pl/sql  - interaction avec la base de données & structures de contrôlePl/sql  - interaction avec la base de données & structures de contrôle
Pl/sql - interaction avec la base de données & structures de contrôleAbdelouahed Abdou
 
Bases de données réparties par la pratique
Bases de données réparties par la pratiqueBases de données réparties par la pratique
Bases de données réparties par la pratiqueAbdelouahed Abdou
 
Document Object Model ( DOM)
Document Object Model ( DOM)Document Object Model ( DOM)
Document Object Model ( DOM)Abdelouahed Abdou
 
Chapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en CChapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en CAbdelouahed Abdou
 
Introduction au traitement d'images
Introduction au traitement d'imagesIntroduction au traitement d'images
Introduction au traitement d'imagesAbdelouahed Abdou
 
Développement de modules pour odoo (anciennement OpenERP): exemples et exerci...
Développement de modules pour odoo (anciennement OpenERP): exemples et exerci...Développement de modules pour odoo (anciennement OpenERP): exemples et exerci...
Développement de modules pour odoo (anciennement OpenERP): exemples et exerci...Abdelouahed Abdou
 
Présentation de OpenERP/Odoo: Progiciel de Gestion Intégré Open Source
Présentation de OpenERP/Odoo: Progiciel de Gestion Intégré Open SourcePrésentation de OpenERP/Odoo: Progiciel de Gestion Intégré Open Source
Présentation de OpenERP/Odoo: Progiciel de Gestion Intégré Open SourceAfrica Performances
 

Destacado (11)

Bases de données réparties
Bases de données répartiesBases de données réparties
Bases de données réparties
 
Ajax (Asynchronous JavaScript and XML)
Ajax (Asynchronous JavaScript and XML)Ajax (Asynchronous JavaScript and XML)
Ajax (Asynchronous JavaScript and XML)
 
Pl/sql - interaction avec la base de données & structures de contrôle
Pl/sql  - interaction avec la base de données & structures de contrôlePl/sql  - interaction avec la base de données & structures de contrôle
Pl/sql - interaction avec la base de données & structures de contrôle
 
Bases de données réparties par la pratique
Bases de données réparties par la pratiqueBases de données réparties par la pratique
Bases de données réparties par la pratique
 
Introduction à pl/sql
Introduction à pl/sqlIntroduction à pl/sql
Introduction à pl/sql
 
PL/SQL:les curseurs
PL/SQL:les curseursPL/SQL:les curseurs
PL/SQL:les curseurs
 
Document Object Model ( DOM)
Document Object Model ( DOM)Document Object Model ( DOM)
Document Object Model ( DOM)
 
Chapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en CChapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en C
 
Introduction au traitement d'images
Introduction au traitement d'imagesIntroduction au traitement d'images
Introduction au traitement d'images
 
Développement de modules pour odoo (anciennement OpenERP): exemples et exerci...
Développement de modules pour odoo (anciennement OpenERP): exemples et exerci...Développement de modules pour odoo (anciennement OpenERP): exemples et exerci...
Développement de modules pour odoo (anciennement OpenERP): exemples et exerci...
 
Présentation de OpenERP/Odoo: Progiciel de Gestion Intégré Open Source
Présentation de OpenERP/Odoo: Progiciel de Gestion Intégré Open SourcePrésentation de OpenERP/Odoo: Progiciel de Gestion Intégré Open Source
Présentation de OpenERP/Odoo: Progiciel de Gestion Intégré Open Source
 

Similar a Introduction à ASP.NET

Introdot Netc Sharp Fr
Introdot Netc Sharp FrIntrodot Netc Sharp Fr
Introdot Netc Sharp FrGregory Renard
 
Premiers pas dans l'univers .NET
Premiers pas dans l'univers .NETPremiers pas dans l'univers .NET
Premiers pas dans l'univers .NETBantu Hub
 
Informatique Mobile et synchronisation
Informatique Mobile et synchronisationInformatique Mobile et synchronisation
Informatique Mobile et synchronisationSébastien Letélié
 
Le développement d&rsquo;un Composant WinRT
Le développement d&rsquo;un Composant WinRTLe développement d&rsquo;un Composant WinRT
Le développement d&rsquo;un Composant WinRTMicrosoft
 
Réutilisation de code entre Windows 8 et Windows Phone 8.
Réutilisation de code entre Windows 8 et Windows Phone 8.Réutilisation de code entre Windows 8 et Windows Phone 8.
Réutilisation de code entre Windows 8 et Windows Phone 8.Microsoft
 
resume-theorique-m105-0903-2-622f06c594dce.pdf
resume-theorique-m105-0903-2-622f06c594dce.pdfresume-theorique-m105-0903-2-622f06c594dce.pdf
resume-theorique-m105-0903-2-622f06c594dce.pdfFootballLovers9
 
Dotnet csharp
Dotnet csharpDotnet csharp
Dotnet csharpSDFG5
 
La plateforme de développement Microsoft pour les nuls
La plateforme de développement Microsoft pour les nulsLa plateforme de développement Microsoft pour les nuls
La plateforme de développement Microsoft pour les nulsMicrosoft
 
Chapitre 0_ Introduction à la compilation.pdf
Chapitre 0_ Introduction à la compilation.pdfChapitre 0_ Introduction à la compilation.pdf
Chapitre 0_ Introduction à la compilation.pdfbenfifiaymen36
 
La technologie net par karim kalti
La technologie net par karim kalti La technologie net par karim kalti
La technologie net par karim kalti Imen Naés
 
Keynote .NET 2015 : une nouvelle ère
Keynote .NET 2015 : une nouvelle èreKeynote .NET 2015 : une nouvelle ère
Keynote .NET 2015 : une nouvelle èreMicrosoft
 

Similar a Introduction à ASP.NET (20)

Chapitre 1
Chapitre 1Chapitre 1
Chapitre 1
 
Introdot Netc Sharp Fr
Introdot Netc Sharp FrIntrodot Netc Sharp Fr
Introdot Netc Sharp Fr
 
Premiers pas dans l'univers .NET
Premiers pas dans l'univers .NETPremiers pas dans l'univers .NET
Premiers pas dans l'univers .NET
 
Architecture .net
Architecture  .netArchitecture  .net
Architecture .net
 
Informatique Mobile et synchronisation
Informatique Mobile et synchronisationInformatique Mobile et synchronisation
Informatique Mobile et synchronisation
 
Tour Horizont.Net
Tour Horizont.NetTour Horizont.Net
Tour Horizont.Net
 
Le développement d&rsquo;un Composant WinRT
Le développement d&rsquo;un Composant WinRTLe développement d&rsquo;un Composant WinRT
Le développement d&rsquo;un Composant WinRT
 
43_pps.pdf
43_pps.pdf43_pps.pdf
43_pps.pdf
 
Réutilisation de code entre Windows 8 et Windows Phone 8.
Réutilisation de code entre Windows 8 et Windows Phone 8.Réutilisation de code entre Windows 8 et Windows Phone 8.
Réutilisation de code entre Windows 8 et Windows Phone 8.
 
resume-theorique-m105-0903-2-622f06c594dce.pdf
resume-theorique-m105-0903-2-622f06c594dce.pdfresume-theorique-m105-0903-2-622f06c594dce.pdf
resume-theorique-m105-0903-2-622f06c594dce.pdf
 
Framework .net overview
Framework .net overviewFramework .net overview
Framework .net overview
 
Dotnet csharp
Dotnet csharpDotnet csharp
Dotnet csharp
 
Architecture .NET
Architecture .NETArchitecture .NET
Architecture .NET
 
La plateforme de développement Microsoft pour les nuls
La plateforme de développement Microsoft pour les nulsLa plateforme de développement Microsoft pour les nuls
La plateforme de développement Microsoft pour les nuls
 
Windev
WindevWindev
Windev
 
Architecture android
Architecture androidArchitecture android
Architecture android
 
Chapitre 0_ Introduction à la compilation.pdf
Chapitre 0_ Introduction à la compilation.pdfChapitre 0_ Introduction à la compilation.pdf
Chapitre 0_ Introduction à la compilation.pdf
 
1-android.pdf
1-android.pdf1-android.pdf
1-android.pdf
 
La technologie net par karim kalti
La technologie net par karim kalti La technologie net par karim kalti
La technologie net par karim kalti
 
Keynote .NET 2015 : une nouvelle ère
Keynote .NET 2015 : une nouvelle èreKeynote .NET 2015 : une nouvelle ère
Keynote .NET 2015 : une nouvelle ère
 

Introduction à ASP.NET

  • 1. INTRODUCTION À PRÉPARATION À LA CERTIFICATION MCPD 70-562 2012/2013 Abdelouahed sabri abdelouahed.sabri@gmail.com
  • 2. OBJECTIFS  Comprendre  Le fonctionnement du Framework .Net  Les principes de base de ASP.NET  Faire la différence entre Page web Classiques et pages ASPX crées avec ASP.NET 2
  • 3. FRAMEWORK .NET  Framework .Net  Le Framework .NET consiste en une collection de librairies DLL (Dynamic Link Library) librement distribuable et un environnement d’exécution (un Run-time)  Les programmes s’exécutant sous contrôle de l’environnement .NET.  Ceci est appelé Mode Géré ou Managé (managed code).  Il Comprend un ensemble de classes qui peuvent être utilisées par tous les langages prenant en charge l’architecture .NET NB: cette couche Windows est directement incorporée dans le noyau des nouvelles versions de Windows 3
  • 4. FRAMEWORK .NET  Spécifications:  Managed Code (code managé):  C’est un code source qui s'exécute sous la gestion de la machine virtuelle framework .NET et qui est appelée CLR (Common Language Runtime)  Tous les compilateurs de langages .Net génèrent un code intermédiaire appelé IL (Intermediate Language).  Contrairement au Unmanaged code (code non géré ou bien code natif) qui est un code source exécuté directement par le processeur (comme pour le cas de C) 4
  • 5. FRAMEWORK .NET  Spécifications:  CLR (Common Language Runtime):  Fournit des services aux programmes qui s’exécutent sous son contrôle. Ces services assurent:  Le chargement (load) et l’exécution contrôlée des programmes  Les vérifications de type lors des appels de fonctions  La conversion de code intermédiaire en code natif lors de l’exécution des programmes, opération appelée JIT (Just In Time Compiler)  La gestion automatique de la mémoire avec ramasse-miettes (garbage collector)  L’adaptation automatique des programmes aux caractéristiques nationales (langue, représentation des nombres et des symboles, etc.)  La compatibilité avec les DLL et les modules COM actuels qui s’exécutent en code natif non contrôlé par .NET en utilisant le P/invoke 5
  • 6. FRAMEWORK .NET  Spécifications:  Compilation en MSIL (Microsoft Intermediate Language):  Lors d'une compilation destinée à produire un code managé, le compilateur convertit le code source en langage intermédiaire, appelé MSIL  MSIL: Un jeu d'instructions indépendant du processeur qui est converti (par la suite) efficacement en code natif 6
  • 7. FRAMEWORK .NET  Spécifications:  La compilation JIT (Just-In-Time compiler):  La JIT convertit à la demande le code en langage MSIL (juste le code appelé) en code natif au moment de l'exécution de l'application.  Elle tient compte du fait qu'une partie du code ne sera peut-être jamais appelée au moment de l'exécution. Alors, au lieu de consacrer du temps et des ressources mémoire à la conversion de toutes les instructions MSIL d'un fichier exécutable portable (PE) en code natif, elle les convertit au fur et à mesure des besoins au moment de l'exécution et stocke le code natif obtenu en mémoire afin qu'il soit accessible pour les appels ultérieurs dans le contexte de ce processus. 7
  • 8. FRAMEWORK .NET  Spécifications  P/Invoke:  P/Invoke (Platform Invocation Services) de Microsoft est une spécification de l'implémentation de CLI (Common Language Infrastructure ) qui permet au managed code d'appeler du code natif dans les DLL  Quand P/Invoke est utilisé, le CLR gère le chargement des DLL et la conversion des types en types CTS (Common Type System). Pour réaliser cela, le CLR effectue les étapes suivantes :  Localiser l'emplacement de la DLL qui contient la fonction recherchée  Charger la DLL en mémoire  Trouver l'adresse en mémoire de la fonction et ajouter ses arguments dans la Pile d'appel  Convertir les types de données de .NET en un autre type 8
  • 9. FRAMEWORK .NET  Spécifications  L’infrastructure CLI (Common Language Infrastructure ):  Une spécification ouverte développée par Microsoft pour sa plate- forme .NET qui décrit l'environnement d'exécution de la machine virtuelle  L'implémentation de la CLI inclut des fonctions pour gérer les erreurs, le ramasse-miettes, la sécurité et l'interopérabilité avec le système d'exploitation (les objets COM pour Microsoft window, gtk pour Mono de novell) 9
  • 10. FRAMEWORK .NET  Spécifications:  CTS (Common Type System):  Est un standard (norme) qui spécifie comment les définitions de Type et les valeurs spécifiques des Types sont représentés dans la mémoire de l'ordinateur.  Il est destiné à permettre à des programmes écrits dans des langages de programmation différents (dans la famille des langages .Net) pour échanger facilement des informations.  Il est utilisé dans les langages de programmation;  Un type CTS peut être décrit comme la définition d'un ensemble de valeurs (par exemple, « tous les entiers compris entre 0 et 10 »), et les opérations permises sur ces valeurs (par exemple, l'addition et la soustraction). 10
  • 11. MICROSOFT .NET  Les langages:  La puissance de l’architecture .NET réside dans le fait que l’utilisateur peut changer librement d’un langage de développement à un autre sans à réécrire le code.  On peut bien développer une partie dans un langage et une autre partie dans un langage différent.  les langages .NET doivent présenter des caractéristiques communes:  Le type de données est définit par le CTS (Common Type System),  L’utilisation des classes, et ainsi des objets, doit être de la même manière,  les langages .NET produisent un code managé 11
  • 12. MICROSOFT .NET  Les langages:  Dans sa première version, Microsoft a présenté, d'entrée, quatre langages compatibles .Net :  C# (C sharp): le langage .NET vedette de Microsoft. Il a été proposé pour faire face au succès de Java.  VB.Net: la version orientée objet pour les développeurs VB6  J# (version .Net de J++, le clone avéré de Java)  délaissé  C++/CLI pour les développeurs C++.  Au fil des années, ils se sont ajoutés, par Microsoft, les langages JScript.Net et Windows PowerShell et ASP.Net qui ouvre aux langages .Net le monde du développement Web. 12
  • 13. MICROSOFT .NET  Les langages:  Les langages .Net crées des programmes:  Pour le mode console (non graphique),  Des applications pour interface graphique Windows,  Des application pour des « Smart Devices »,  Des application pour le Web  Coté serveur avec ASP.NET,  Coté client avec Silverlight ou JavaScript.NET  Des applications Windows avec effets d’animation (WPF, Windows Presentation Foundation), 13
  • 14. MICROSOFT .NET  Les langages:  Non Microsoft  La publication par Microsoft de toute la documentation nécessaire pour permettre à d’autre fournisseurs de compilateurs de livrer des versions .NET de leur produit a ouvert la voie à plusieurs implémentations tierces d'autres langages en .NET. on peut citer :  Python : IronPython project,  Pascal : Turbo Delphi for .NET,  Smalltalk: #Smalltalk  Perl: PerlNET  … 14  Un programmeur qui utilise un langage supportant le .NET peut a tout moment utiliser un autre langage .NET qui lui parait approprier à certaines parties de son application.
  • 15. Code C# Code VB.NET Compilateur Common Language Infrastructure Common Intermediate Language Common Language Runtime 0101010101110001100 1100011011000101111 Compilateur Langages compatibles .NET sont compilés en un deuxième langage neutre appelé CIL Le CLR compile le code CIL en code-machine qui peut être exécuté sur la plateforme courante 15
  • 16. MICROSOFT .NET  ASP.NET  Le développement Web est plus facile: les applications Web sont développées comme des applications Windows en utilisant le modèle ASP.net: insertion du code (codebehind) C# ou VB.net dans des pages HTML (ajouter du JavaScript) est envoyé au client  On dit que le C# et/ou VB.NET sont utilisés pour modifier le HTML 16
  • 17. DÉVELOPPEMENT WEB  Les échanges Web se font en mode client-serveur A.Les clients envoient des requêtes  Un client désigne un ordinateur personnel ou un appareil individuel ( téléphone, tablette) sur lequel est exécuté le logiciel client (navigateur) B.Les serveurs attendent les requêtes des clients et y répondent  Le serveur désigne un ordinateur (de grande capacité) sur lequel est exécuté le logiciel serveur 17
  • 18. DÉVELOPPEMENT WEB  Architectures dans l’environnement client-serveur  Architecture centralisée:  Client et serveur sur la même machine  Architecture client-serveur, notée 2-tiers:  Serveur sur une machine distante et les clients peuvent y accéder utilisant un programme client  Exemple: un serveur Web qui contient plusieurs logiciels qui fonctionnent en parallèle: IIS (serveur HTTP), SQL Server(serveur de base de données) et ASP.NET  Architecture 3-tiers:  Un client ( l'ordinateur demandeur de services) équipé d'une interface utilisateur (généralement un navigateur web) chargé de la présentation  Un serveur d'application ( appelé middleware) qui fournit la ressource, mais en faisant appel à un autre serveur  Sur le serveur: serveur HTTP et ASP.NET  Un serveur de données qui fournit au serveur d'application les données requises pour répondre au client  Sur le serveur: SQL Server 18
  • 19. DÉVELOPPEMENT WEB  Eléments intervenants dans une applications Web:  Serveur:  Ordinateur contenant des informations (des pages) consultables à distance.  Identifié par une adresse IP et/ou un nom de domaine (URL)  Serveur HTTP,  IIS (Internet Information Server), Apache, …  Navigateur Web,  Mozilla Firefox, Google Chrome, Internet Explorer, Netscape, …  Protocole de communication  HTTP: Protocole régissant la communication entre les clients et serveurs Web  Il fonctionne en mode client/serveur  Port :80 (en général)  HTTPS: HTTP sécurisé. Utilise le port 443 19
  • 20. DÉVELOPPEMENT WEB  Comment naviguer sur le Web? I. Utiliser un navigateur II. Spécifier une adresse URL  URL: adresse (IP ou nom) d’un serveur (site) Web (HTTP) + adresse d’un ressource sur le site Exemple: http://msdn.microsoft.com/fr- fr/asp.net/centrum-asp-net.aspx III. Le navigateur :  Télécharge le document correspondant à l’URL  Interprète et affiche le contenu 20
  • 21. DÉVELOPPEMENT WEB  Pages statiques  Pages dont le contenu ne change pas  Elles peuvent contenir du texte, des animations flash, de la musique, des vidéo ….  Page dynamique  Des pages Web dont le contenu change suite à une action du visiteur Les pages sont construites « à la volée » à la demande. 21
  • 22. DÉVELOPPEMENT WEB  Pages Web dynamiques  Fonctionnement:  Lors de la consultation d'une page Web dynamique, un serveur HTTP transmet la requête au logiciel correspondant, et ce logiciel se charge de générer et envoyer le contenu de la page  On peut faire appel au CGI (Common Gateway Interface)  Les logiciels générant des pages Web dynamiques sont souvent écrits avec les langages  Coté serveur: ASP.NET, PHP, JSP (Java Server Pages), ASP (Active Server Pages)  Coté client: Silverlight, JavaScript 22
  • 23. DÉVELOPPEMENT WEB  CGI (Common Gateway Interface)  Une interface utilisée par un serveur HTTP pour exécuter un programme résidant sur le serveur  Ce programme génère des pages HTML à la volée à partir du résultat des exécutions  Ce programme permet de:  Récupérer des données à partir d’un formulaire  Effectuer des traitements sur le serveur  Lecture/écriture dans une base de données  Stockage d’informations: compteurs, identifiants, IP, …  Un programme CGI s’exécutant sur la machine hébergeur peut être un fichier binaire (exe, en langage compilé: C, Perl, Python, VB), un script (code interprété: PHP, ASP) ou semi interprété (ASP.NET, JSP) 23
  • 24. PROGRAMMATION WEB AVEC ASP.NET  Outils:  Serveur: IIS (Internet Information Server),  On peut utiliser Apache  Projet Mono  IDE: « Visual Web Developer Express Edition» ou bien «Microsoft Visual Studio »  Il y a d’autres IDE :  QuickSharp , Webmatrix, …  Navigateur: Google chrome, Internet Explorer, Mozilla FireFox  Pré-Requis:  Une bonne connaissance de HTML  Des connaissances de base en C# 24
  • 25. ASP.NET  Vue utilisateur (navigateur) IIS (Internet Information Server) Client Serveur Requéte: http://www.msn.com/default.aspx Réponse: <html>…</html> Réseau Protocole: HTTP TCP/IP PC/Mac/Unix + Navigateur 25
  • 26. ASP.NET: VUE D'ENSEMBLE ET CARACTÉRISTIQUES  ASP.NET fournit des services pour permettre la création, le déploiement et l'exécution des Applications Web et des services Web  Les applications Web sont construites en utilisant les Web Forms  Web Forms sont conçus pour rendre la création d’applications Web aussi facile que la création des applications Visual Basic  Applications sont basées sur le Framework .NET  tout langage de programmation NET peut être utilisé (C #, Visual Basic)  Modèle objet complet  Séparation entre le code et l'interface utilisateur  La gestion des sessions  La mise en cache, débogage, Extensibilité 26
  • 27. ASP.NET  1ére application  Lancer MS Visual Studio (ou bien MS Visual Web Developer)  Menu fichier  Nouveau site Web  Choisir Visual C#  Web  Application ASP.NET  Configurer les informations: Nom, Emplacement (Local, HTTP ou FTP) 27  Dans l’explorateur de solution on aura: – Default.aspx: la page web. Disponible en deux modes d’affichage: « Concepteur de vues » et « Balisage » – Bouton droit sur « Default.aspx » et « Afficher le balisage » ou « Concepteur de vues » – Default.aspx.cs: le code behind (code C# exécuté sur le serveur) – Web.config: fichier de configuration de l’application
  • 28. ASP.NET 1ÉRE APPLICATION  Default.aspx: La directive Page précisant les informations nécessaires à ASP.NET pour traiter ce fichier Les directive ASPX sont entre <%@ et %> La directive DOCTYPE qui précise l'URI pour la DTD, qui définit le vocabulaire XHTML. L'attribut xmlns qui spécifie l'espace de noms XML pour le document. runat="server" indique que ASP.NET traite l'élément et ses éléments imbriqués et génère le code XHTML correspondant 28
  • 29. ASP.NET 1ÉRE APPLICATION  Default.aspx  Si on travaille avec VB.net, la directive Page sera la suivante: <%@ Page Language="vb" AutoEventWireup="true" CodeFile="Default.aspx.vb" Inherits="_Default" %>  Quand AutoEventWireup est en TRUE, ASP.NET traite automatiquement toute méthode dont le nom est Page_eventName comment un événement 29
  • 30. ASP.NET 1ÉRE APPLICATION  Modification:  On peut modifier les propriétés de la page Web de deux manières: <head runat="server"> <title>Ma premiére page ASPX</title> </head> 1. Directement dans le mode balisage 2. Utilisant les propriétés du DOCUMENT 30
  • 31. ASP.NET 1ÉRE APPLICATION  Modification (suite):  Différence entre contrôles ASP.NET et HTML  Ajouter un titre <h2>  Ajouter une étiquette « label » directement dans le code HTML  Ajouter une étiquette à partir de la boite à outils 31 <body> <form id="form1" runat="server"> <div> <h2> le frameWork .net</h2> <label id="LblHTM"> Lable HTML</label> <p> <asp:Label ID="Label1" runat="server" Text="Label ASP" ></asp:Label> </p> </div> </form> </body> – La balise asp indique que l’étiquette est un contrôle ASP.NET et pas un élément XHTML
  • 32. ASP.NET 1ÉRE APPLICATION  Modification  La modification du contrôle ASP.NET est plus simple: fenêtre Propriétés <body> <form id="form1" runat="server"> <div> <h2> le frameWork .net</h2> <label id="LblHTM"> Lable HTML</label> <p> <asp:Label ID="Label1" runat="server" Text="Label ASP" BorderColor="#FF3300" BorderStyle="Dashed" Font-Size="Large" ForeColor="#3366CC"></asp:Label> </p> </div> </form> </body> </html> 32
  • 33. ASP.NET 1ÉRE APPLICATION  Modification (suite):  Code HTML envoyé au client (navigateur): 33
  • 34. <html xmlns="http://www.w3.org/1999/xhtml"> <head><title> Ma premiére page ASPX </title></head> <body> <form name="form1" method="post" action="Default.aspx" id="form1"> <div> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJODExMDE5NzY5ZGQcf4hA8Ern83MUMx+7p/3Vl5XGMg==" /> </div> <div> <h2> le frameWork .net</h2> <label id="LblHTM"> Lable HTML</label> <p> <span id="Label1" style="display:inline-block;color:#3366CC;border- color:#FF3300;border-style:Dashed;font-size:Large;">Label ASP</span> </p> </div> </form> </body> </html> Seuls les éléments marqués dans le fichier ASPX avec runat="server" sont modifiés et remplacés dans le XHTML généré Le formulaire contient une balise span pour représenter le texte de l'étiquette ASP.NET «Label1». Les Propriétés de formatage du l’étiquette sont convertis dans l'attribut style de l'élément span. Des composantes Non visuelles sont ajoutées au formulaire , appelées hidden inputs, enregistre les données invisible à l’utilisateur 34
  • 35. ASP.NET 1ÉRE APPLICATION  Code Behind  C’est le code dans lequel on écrira les instructions qui seront exécutées sur le serveur comme, par exemple, récupérer une valeur, changer un attribut dynamiquement, créer un objet ….  Dans la page Defalut.aspx.cs using System; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } } 35
  • 36. ASP.NET 1ÉRE APPLICATION  Relation entre un fichier ASPX et le fichier code behind  Le fichier code-behind hérite de Page, qui définit la fonctionnalité générale d'une page web. public partial class _Default : System.Web.UI.Page  Le fichier code-behind contient une classe partielle  La première fois que la page web est demandée, cette classe est compilé et une instance est créée  Cette instance représente notre page – le code XHTML est généré XHTML est envoyé au client  Une fois une instance de la page Web a été créé, plusieurs clients peuvent l'utiliser pour accéder à la page – aucune recompilation est nécessaire. 36
  • 37. ASP.NET 1ÉRE APPLICATION  Evénement  Ajouter un bouton ASP.net  Et ajouter l’événement onclick 37 <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text=" Date" /> protected void Button1_Click(object sender, EventArgs e) { Label1.Text = DateTime.Now.ToString(); }  Code ASPX  Code behind ASPX.CS
  • 38. ASP.NET 1ÉRE APPLICATION  Code Behind: using System; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Label1.Text = DateTime.Now.ToString(); } } Extrait la date courante et l’affecte à la propriété texte du label ASP.NET 38
  • 39. ASP.NET 1ÉRE APPLICATION  À Faire  Créer une application Web qui simule une calculatrice: somme, soustraction, multiplication et division. 39