0% ont trouvé ce document utile (0 vote)
19 vues61 pages

Asp Net

Le document traite de la programmation ASP.NET et du .NET Framework, en détaillant ses caractéristiques, les objets ASP.NET, et les différences entre ASP et ASP.NET. Il aborde également les concepts de programmation orientée objet, y compris les classes, méthodes, propriétés, constructeurs, destructeurs et interfaces. Enfin, il explique le rôle du Common Language Runtime (CLR) et la gestion des assemblées dans le développement d'applications web.

Transféré par

Yacine BENATIA
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
19 vues61 pages

Asp Net

Le document traite de la programmation ASP.NET et du .NET Framework, en détaillant ses caractéristiques, les objets ASP.NET, et les différences entre ASP et ASP.NET. Il aborde également les concepts de programmation orientée objet, y compris les classes, méthodes, propriétés, constructeurs, destructeurs et interfaces. Enfin, il explique le rôle du Common Language Runtime (CLR) et la gestion des assemblées dans le développement d'applications web.

Transféré par

Yacine BENATIA
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

ASP NET

Au sommaire :

.NET FrameWork

Programmation Objet

Eléments du langages

Objet page

Control, HTMLControl

Webcontrol
Affichage
Boutons
Saisie
Liste
Validation
Controles enrichis
Listes de données

ADO.Net
Command
DataReader
DataSet

Objets ASP.Net
Fichiers
Email
Trace
MICROSOFT.NET
Microsoft .net se décompose en 3 éléments distincts :

• Le framework

• Les services Web

• Les serveurs entreprise.net (Biztalk server ...)

.NET FRAMEWORK
Caractéristiques principales du Framework:

• Plateforme conçue dés le départ pour les applications compatibles avec Internet et
celles équipées pour Internet qui comprennent et qui adoptent des standards ouverts tels
que XML,HTTP, SOAP.

• Une plate forme qui fournit un grand nombre de technologies de développement d'
applications très complètes et puissantes telles que Windows Forms, ASP.net ...

• une plate forme proposant une bibliothèque de classes complète avec un support important
de l' accès aux données (relationnelles ou XML), des services de répertoire, des filles d'
attentes de message ...

• Une plate forme avec une bibliothèque de classes de base composée de centaines de
classes permettant l' exécution de de taches courantes telles que : gestion de fichier, l'
accès au registre, la sécurité, le threading, et la recherche de texte à l' aide d' expressions
régulières ...

• Une plate forme avec laquelle on peut utiliser le langage de son choix.

• Une plate forme qui cohabite avec les version précédentes.

• Une plate forme avec une exécution de code et un environnement de gestion indépendant,
à savoir CLR (Comon Langage runtime) qui vérifie si le code est exécuté en toute
sécurité, qui fournit une couche d' abstraction au dessus du système d' exploitation.

Le Common Langage Runtime


Le CLR est chargé d' exécuter le code (Code manager), de gérer et d' optimiser la gestion de la
mémoire( Garbage Collector), mais aussi de gérer la sécurité et les autorisations défection
(Security engine)

Le première fois qu 'une page ASP.net (suffixée aspx) est demandée par un utilisateur, le CLR
compile le code dans un langage intermédiaire le MSIL (Microsoft Intermediate Langage),
ensuite le code ainsi généré est à nouveau compiler pour produire un code binaire qui est exécuté
et mis en mémoire cache. Ce code binaire sera ensuite appelé pour tous les autres appels à la
même page.

Page 2 sur 61
Principaux avantages :

1. Le code n' est plus interprété, mais exécuté.


2. Quelque soit les langage de développement utilisés, tous sont compilés en MSIL.
3. Tous les langages produisant du MSIL, ils peuvent communiquer entre eux sans
problème. Pour ce faire Microsoft a fait paraître la CLS (Common Langage
Specification). tout langage qui la respecte peut bénéficier du Framework, 30
langages sont prévus : Visual basic, Csharp, Javascript, Cobol, Delphi, Perl, Eiffel ...
4. Le code MSIL indépendant du processeurs.

Les Classes de base du Framework


Espaces Noms

Le framework propose plusieurs centaines de classes, certaines permettent un accès simplifié au


système d' exploitation, d' autres spécialisées dans les applications Internet ...
Afin de "s' y retrouver", les classes son regroupées dans des espaces nom (Namespace) par
exemple

System : classes Integer, string,...


System.Data.OleDB : accès aux bases de données via OLeDB
System.Web.UI.WebControls : Contrôles Web serveur

Physiquement ces classes sont dans des fichiers dll, par exemple la majorité des classe utilisées
dans une pages Web sont contenues dans le fichier System.Web.dll.

Page 3 sur 61
La notion d' Assemblée

Afin d' éviter le problème posé par les dépendances et les problèmes de version entre les
application, Microsoft introduit la notion d' Assemblée. Une assemblée est une collection d' un ou
plusieurs fichiers (dll, exe, ressources jpeg ...), une assemblée déclare un manifeste auprès du
FrameWork indiquent :

o Son nom et sa version


o les fichiers de l' Assemblée
o Les autre assemblées avec leur version exacte nécessaire à son fonctionnement
o Les types exposés par l' Assemblée et les permissions

Elle est auto-descriptive, Plusieurs assemblées avec des versions différentes peuvent cohabiter
dans le framework. dans la plupart des cas une assemblée est un fichier unique .dll ou .exe qui
pour la plate forme ASP.net doit être copié dans le dossier /bin à la racine du serveur.

ASP.NET
ASP.net repose entièrement sur le Framework, il permet de créer :

• Des pages web (Webforms)


• Des services web.

Différences essentielles entre APS et ASP.net

ASP ASP.net
Le code script et le code HTML sont Le code peut être séparé du code
intiment liés HTML, soit en 2 parties de page
distinctes, soit en 2 fichiers distinct
Le code script est interprété Le code est complié une première fois
puis exécuté et mis en cache pour les
appels ultérieurs
Langages de script supportés : Vbscript ASP.net ne supporte que les langages
et Javascript : langages non typés. fortement typés : Visual Basic .net, C#
...
Adaptation manuelle des pages en Suivant la nature du navigateur
fonction de navigateurs ASP.net, générera le code adéquate et
répartira les charges entres client /
serveur.
Mise à jour des composants serveur Installation des nouveaux composant
nécessitant arrêt du serveur, des par simple copier-coller
services ...

Page 4 sur 61
FONCTIONNALITÉS ORIENTÉES OBJET

Classes

[ Public | Private | Protected | Friend | [ MustInherit | NotInheritable ] _


Class name
[ Inherits classname ]
[ Implements interfacenames ]
...
........ Instructions .....
...
End Class

Public : Classe publique

Private : Classe accessible uniquement dans le fichier dans lequel elle est déclarée

Protected : Classe accessible au départ de la classe contenante et des classes dérivées

Friend : Classe uniquement disponible dans cet assembly

Mustinherit : Class abstraite , ses membres doivent être implémentés par des classes dérivées

NotInheritable : cette classe ne peut être héritée

A l'intérieur d'une classe, la définition des membres suit les mêmes règles. Les membres non
explicitement déclarés par un mot-clé sont Public par défaut.

Inherits :

L'instruction Inherits permet de déclarer une nouvelle classe, appelée une classe dérivée, basée
sur une classe existante, appelée une classe de base. Les classes dérivées héritent des
propriétés, des méthodes, des événements, des champs et des constantes de la classe de base et
peuvent les étendre.

• Toutes les classes peuvent être héritées par défaut, sauf si


elles sont marquées avec le mot clé NotInheritable. Les
classes peuvent hériter d'autres classes dans votre projet
ou de classes dans d'autres assemblys faisant référence à
votre projet.
• Contrairement aux langages autorisant des héritages
multiples, Visual Basic .NET ne permet qu'un seul
héritage dans des classes ; les classes dérivées ne
peuvent avoir qu'une seule classe de base. Bien que les
héritages multiples ne soient pas autorisés dans les classes,
les classes peuvent implémenter plusieurs interfaces,
qui peuvent accomplir efficacement les mêmes buts.
• Pour empêcher l'exposition d'éléments restreints dans une
classe de base, le type d'accès d'une classe dérivée
doit être égal à sa classe de base ou être plus
restrictif. Par exemple, une classe Public ne peut pas
hériter d'une classe Friend ou Private, et une classe Friend
ne peut pas hériter d'une classe Private.

implements : noms des différentes interfaces dont la classe dérive.

Exemple :

Public Class Developper


Inherits Person

Page 5 sur 61
'
' Code
'

End Class

Utilisation :

dim intel as new Developper

ou

dim intel as object


intel=new Developper

Méthodes
Les méthodes sont déclarées comme Sub ou Function.

[{ Overloads | Overrides | Overridable | NotOverridable | MustOverride } |


Shared ]
[{ Public | Protected | Friend | Protected Friend | Private }]
Sub name [(arglist)] [ Implements interface.definedname ]
...
.... Instructions
...
[ Exit Sub ]
...
End Sub

[{ Overloads | Overrides | Overridable | NotOverridable | MustOverride }]


[{ Public | Protected | Friend | Protected Friend | Private }]
Function name [(arglist)] [ Implements interface.definedname ] as type
...
.... Instructions
...
return <valeur>
[ Exit Function ]
...
return <valeur>
End Function

Overloads : Indique que cette procédure Function surcharge une ou plusieurs procédures définies
avec le même nom dans une classe de base.

Overrides : Indique que cette procédure Function substitue une procédure de même nom dans
une classe de base.

Overridable : Indique que cette procédure Function peut être substituée par une procédure de
même nom dans une classe dérivée.

NotOverridable : Indique que cette procédure Function ne peut pas être substituée dans une
classe dérivée.

MustOverride : Indique que cette procédure Function n'est pas implémentée dans cette classe et
qu'elle doit l'être dans une classe dérivée pour que cette classe puisse être créée.

Shared : membre partagé parmi toutes les instance de la classe et indépendamment d'une
instance de la classe (cas de System.Math.pi)

Public :Les procédures déclarées avec le mot clé Public ont un accès public. Il n'existe aucune
restriction quant à l'accessibilité des procédures publiques.

Page 6 sur 61
Protected : Méthode accessible au départ de la classe contenante et classe dérivées.

Friend : Les procédures déclarées avec le mot clé Friend ont un accès ami. Elles sont accessibles à
partir du programme contenant leur déclaration et à partir de n'importe quel autre endroit du
même assembly.

Protected Friend : Les procédures déclarées avec les mots clés Protected Friend ont l'union des
accès ami et protégé. Elles peuvent être utilisées par du code dans le même assembly, de même
que dans les classes dérivées. L'accès Protected Friend peut être spécifié uniquement pour les
membres des classes.

Private : Méthode uniquement accessible dans la classe.

<arglist> : liste des arguments de la méthode, les arguments sont passés soit par valeur Byvar,
soit par référence Byref .

Exemple :

Public Class Calcul

Public function add ( op1 as Integer, op2 as


Integer)

return op1+op2

End function

End Class

Utilisation :

Dim oper as new calc


Dim resultat as Integer
resultat=oper.add(1237,1244)

Propriétés
Les propriétés peuvent être définies comme membres Public ou Private ou en utilisant
l'instruction Property.

Public Class Calcul


Public op1 as Integer
Public op2 as Integer

Public function add ()

return op1+op2

End function

End Class

Utilisation :

Dim oper as new calc


calc.op1=1237
calc.op2= 1244
resultat=oper.add()
Page 7 sur 61
Property

[ Public | Private | Protected | Friend | Protected Friend ]


{[ ReadOnly | WriteOnly ] [ Overloads | Overrides | Overridable | NotOverridable |
MustOverride } | Shared ] _
Property varname([ ByVal parameter list ]) [ As typename ] [ Implements
interfacemember ]
Get
...
...Instructions
...
return <valeur>
End Get
Set(ByVal value As typename )
...
...Instructions
...
End Set
End Property

Le bloc Get est utilisé pour retourner une valeur, le bloc Set est utilisé pour affecter une valeur.

une propriété Readonly ne peut pas posséder de bloc Get


une propriété Writeonly ne peut pas posséder de bloc Set

exemple :

Public Class Calcul


Private oper1 as Integer
Private oper2 as Integer

Public function add ()

return op1+op2

End function

Public Property op1() as Integer

Get
return oper1
End Get

Set(ByVal Value As Integer)


oper1=Value
End Get

End Property

Public Property op2() as Integer

Get
return oper2
End Get

Set(ByVal Value As Integer)


oper2=Value
End Get

End Property

End Class

Utilisation :

Page 8 sur 61
Dim oper as new calc
calc.op1=1237
calc.op2= 1244
resultat=oper.add()

Construsteurs / Destructeurs
Les constructeurs d'instance initialisent des instances d'un type et sont exécutés par
l'environnement runtime lors de la création d'une instance. La liste des paramètres formels d'un
constructeur est soumise aux mêmes règles que celle d'une méthode. Les constructeurs d'instance
peuvent être surchargés.

exemple :

Public Class Person


Private _Prenom as String
Private _Nom as String

Sub New()

_Prenom=""
_ Nom=""

End Sub

Sub New(FirstName as string, LastName as


string)

_Prenom=FirstName
_ Nom=LastName

End Sub

Public Property Nom() as String

Get
return _Nom
End Get

Set(ByVal Value As Integer)


_Nom=Value
End Get

End Property

Public Property Prenom() as String

Get
return _Prenom
End Get

Set(ByVal Value As Integer)


_Prenom=Value
End Get

End Property

End Class

Utilisation:

Page 9 sur 61
Dim Intel as New Person
Intel.Nom= "Badinter"
Intel.Prenom="Robert"

ou

Dim Intel as New Person( "Badinter", "Robert")

Durée de vie des objets :

Les objets entament leur existence au moment où une instance d'une classe est créée à l'aide du
mot clé New.
Les objets cessent d'exister dès que leur portée se termine et qu'ils sont libérés par le Common
Language Runtime (CLR). Visual Basic .NET contrôle la libération des ressources système à
l'aide de procédures nommées destructeurs.

Avant de libérer des objets, le CLR appelle automatiquement la méthode Finalize pour les
objets qui définissent une procédure Sub Finalize. La méthode Finalize peut contenir du code
qui doit s'exécuter juste avant la destruction d'un objet, comme pour la fermeture de fichiers et
l'enregistrement d'informations d'état.

Visual Basic .NET autorise l'emploi d'un deuxième type de destructeur, appelé Dispose, qui peut
être appelé explicitement à tout moment pour libérer immédiatement des ressources.

• L'interface IDisposable possède une méthode, Dispose, que


les clients doivent appeler lorsqu'ils ont fini d'utiliser un
objet.
• Vous pouvez employer l'implémentation de Dispose pour
libérer des ressources et effectuer des tâches comme
la fermeture de fichiers et de connexions à une base de
données.
• Contrairement au destructeur Finalize, la méthode
Dispose n'est pas appelée automatiquement. Les
clients d'une classe doivent appeler explicitement Dispose
pour pouvoir libérer des ressources.

Exemple :

Public Class Calcul

Implements IDisposable

Public Sub Dispose() Implements


IDisposable.Dispose
...
.... Instructions
...
End Sub

Public function add ( op1 as Integer, op2 as


Integer)

return op1+op2

End function

End Class

Interfaces
Les interfaces décrivent les caractéristiques des champs, propriétés, méthodes et événements,
mais laissent les détails d'implémentation aux structures ou aux classes.

Page 10 sur 61
[ Public | Private | Protected | Friend | Protected Friend ]
{[ ReadOnly | WriteOnly ] [ Overloads | Overrides | Overridable | NotOverridable |
MustOverride } | Shared ] _
Interface name
[ Inherits interfacename[, interfacename ]]
[ Property proname ]
[ Function memberame ]
[ Sub memberame ]
[ Event memberame ]
End Interface

Exemple :

Public Interface Ipers


Property ff() As String
Function fl(ByVal champ1 As String) As String
End Interface

Public Class Person


Implements Ipers

Private Name As String


Private Surname As String

Sub New(ByVal nom As String, ByVal prenom As String)


Name = nom
Surname = prenom
End Sub

Sub New()

End Sub
Public Property fnom() As String Implements Ipers.ff
Get
Return Name
End Get
Set(ByVal Value As String)
Name = fnom
End Set
End Property

Public Function fullname(ByVal aa As String) As String Implements


Ipers.fl
Return Name & " " & Surname
End Function

End Class

L'un des avantages des interfaces est l'héritage, car contrairement à une classe un interface peut
dériver de plusieurs classes.

Page 11 sur 61
ÉLEMENTS DE LANGAGE
• tableaux liés: le niveau inférieur d'un tableau est toujours égal à 0, cela ne peut pas être
modifié. L'instruction Option Base n'est pas supportée.

• déclaration de tableau: vous ne pouvez utiliser ReDim que si le tableau a été


préalablement déclaré
• tailles de tableau : les tableaux ne possèdent pas de taille fixe (même si le nombre de
dirnensions est fixé).
Exemple:

Dim ConnectionTimes(10) As Date

Cette instruction déclare un tableau de taille initiale de 11 éléments. Vous pouvez affecter
les valeurs un tableau dans l'instruction de déclaration:

Dim ConnectionTime As Date= {"11:30", "12:00", "06:00"}

• longueur de chaîne : la chaîne à largeur fixe n'est plus supportée.


• variants: le type de données Variant n'est plus supporté. Il est remplacé par un obj ect
plus générique VariantType. La fonction correspondante varType n'est plus supportée. Le
nouvel Object possède une méthode GetType.
• types de données: le type de données currency est remplacé par Decimal
• court-circuit: les expressions booléennes multiples d'une instruction If voient leur
exécution raccourcie. Par exemple, dans une expression comportant And, si la première
partie de l'expression est False, le reste de l'expression n'est pas évalué. De même avec un
opérateur Or, si la première partie de l'expression renvoie True, le reste de l'expression
n'est pas évalué.
• opérateurs raccourcis: une nouvelle forme d'addition et d'attribution a été ajoutée.
Exemple:

counter += 1

name &="Sussman"

• déclaration de variable: lors de la déclaration de plusieurs variables sur une même ligne,
une variable sans type de données prend le type de la variable suivante (et non le type
Variant comme c'était le cas dans VB6). Par exemple, dans la déclaration suivante, Age est
de type Integer:

Dim Age, Hcurs As Integer Dim Name As String, Age, Hours As Integer

• portée de variable: une portée d'un bloc est maintenant supportée. Ainsi des variables
déclarées à l'intérieur d'un bloc (bloc If par exemple) ne sont visibles que dans le bloc (If.
Dans Visual Basic 6, les variables pouvaient être déclarées à n'importe quel endroit et leur
portée était celle de la méthode dans sa totalité
• création d'objet: le mot clé As New peut être utilisé librement dans la ligne de déclaration
de variable. Il n'existe pas de création implicite d'objet. Ainsi, des objets Nothing restent
paramétrès sur Nothing à moins qu'une instance explicite ne soit créée.

• valeurs renvoyées par une fonction: la valeur renvoyée par une fonction est fournie par
l'instruction Return plutôt que par attribution du nom de la fonction à la valeur désirée.
• boucle While: l'instruction Wend a été remplacée par End While ;.
• Empty et Null: les mots clés Empty et Null voient leur utilisation remplacée par Nothing.

Références
Dans Visual Basic 6, vous sélectionnez References dans le menu Project pour accéder à des
composants COM. Il existe une possibilité similaire dans Visual Studio.NET pour référencer des
assemblys (ou des composants COM). En revanche, si vous utilisez Notepad, vous devez fournir
vous mêmes vos références en utilisant le mot clé Imp o r t s. Par exemple

Page 12 sur 61
Imports System
Imports MyComponent

Il est également possible d'utiliser des alias à l'aide de la syntaxe suivante:

Imports aliasName=Namespace

Si vous utilisez un alias, il doit être inclus dans les références des classes que contient l'espace de
noms. Par exemple, si vous disposez d'un espace de nom nommé MyComponent contenant une
classe nommée MyClas s et que vous importez l'espace de noms suivant:

Imports foo = Myccmponent

Vous devez utiliser la syntaxe suivante: Dim comp As foo.MyClass

Gérer les erreurs de structure

La gestion structurée des exceptions s'effectue par l'intermédiaire d'une instruction Try, qui se
compose de trois types de blocs : Try, Catch et Finally. Un bloc Try est un bloc d'instructions
contenant l'instruction à exécuter. Un bloc Catch est un bloc d'instructions qui gère une exception.
Un bloc Finally contient des instructions à exécuter lorsque l'instruction Try se termine, qu'une
exception se soit produite ou non. L'instruction Throw, utilisée en association avec un bloc Catch,
génère une exception qui est représentée par une instance d'un type dérivé de la classe
System.Exception.

Public Sub TryExample()


Dim x As Integer = 5 ' Declare variables.
Dim y As Integer = 0
Try
x /= y
Catch ex As Exception When y = 0
MsgBox(ex.toString)
Finally
Beep()
End Try
End Sub

Type de données
Il existe trois nouveaux types de données:

• Char, pour toute valeur 16 bit.


• Short, pour les entiers 16 bit. Équivalent à l'actuel type Visual Basic Integer (dans
Visual
Basic.NET Integer devient 32 bits et Long 64 bits).
• Decimal, pour les entiers avec signe.

Page 13 sur 61
Structure : Déclaration des types personnalisés, remplace l'ancienne instruction Type.

[Public | Private | Friend]|Structure structureName

End Structure

Exemple :

Public Structure Person


Public FirstNaine As String
Public LastName As String
Private Age As Integer
End Structure

Structures et classes sont intégrées à l'utilisation, permettant ainsi aux structures de contenir non
seulement des membres variables mais également des méthodes:

Public Structure Narcisse


Public Nom As String
Public Prénom As String
Private Agereel As Integer

Public Function Age()As


Integer
Return Agereel - 5
End Function

End Structure

Paramètres
Le transfert par défaut se fait par ByVal. Cela signifie que, pour passer les paramètres par
référence, vous devez explicitement placer ByRef devant le nom du paramètre.

appel de procédure: les parenthèses sont exigées pour tout appel de procédure et plus
seulement pour les fonctions .

En ce qui concerne les paramètres facultatifs, vous devez dorénavant spécifier un paramètre
par défaut. La méthode Ismissing est supprimée.

Sub MyMethod(Name As String, Optional Age As Integer = -1)

Débogage
• la méthode Print de l'objet Debug a été remplacée la méthode Write de l'objet
Trace.

Collections

Page 14 sur 61
L'espace de noms System.Collections contient des interfaces et classes qui définissent différentes
collections d'objets, par exemple, les listes, les files d'attente, les tableaux de valeurs de bit, les
tables de hachage.

Classes

Classe Description

ArrayList Collection simple d'objets. On obtient un éléments grace


à son index.

BitArray Gère un tableau compact de valeurs de bit représentées


par des Boolean, où true indique que le bit est activé (1)
et false indique que le bit est désactivé (0).

Collection Un objet Collection est un ensemble ordonné d'éléments


pouvant être désigné comme une unité.

Hashtable Représente une collection de paires valeur-clé qui sont


organisées en fonction du code de hachage de la clé.

Queue Représente une collection d'objets premier entré,


premier sorti.

ReadOnlyCollectionBase Fournit la classe de base abstraite (MustInherit dans


Visual Basic) pour une collection en lecture seule
fortement typée.

SortedList Représente une collection de paires valeur-clé triées par


les clés et accessible par clé et par index.

Stack Représente une simple collection d'objets de type dernier


entré, premier sorti.

Page 15 sur 61
Écriture des pages

Code HTML et Scripts séparés :

Pagep110.aspx Page p110.aspx.vb


<%@ Page Language="vb" Public Class p110
AutoEventWireup="false"
Codebehind="p110.aspx.vb" Inherits System.Web.UI.Page
Inherits="localhost.p110"%> Protected WithEvents message As
System.Web.UI.HtmlControls.HtmlGenericControl
<!DOCTYPE HTML PUBLIC "-//W3C//DTD
HTML 4.0 Transitional//FR"> Protected WithEvents Imag As
<HTML> System.Web.UI.HtmlControls.HtmlInputImage
<HEAD>
<title>p110</title> Private Sub InitializeComponent()
</HEAD>
<body> End Sub
<form id="Form1" method="post"
runat="server">
Private Sub Page_Init(ByVal sender As
<P><STRONG><FONT
System.Object, ByVal e As
color="#ff0066">HTMLINPUTIMAGE</P>
System.EventArgs) Handles MyBase.Init
<P>
<INPUT type="image" value="Button"
InitializeComponent()
id="Imag"
End Sub
src="menu_extranet_over_14.gif"
runat="server"></P>
<P>&nbsp;</P> Private Sub Page_Load(ByVal sender As
<DIV id="message" runat="server" System.Object, ByVal e As System.EventArgs)
ms_positioning="FlowLayout"></DIV> Handles MyBase.Load
</form> 'Placez ici le code utilisateur pour initialiser la
</body> page
</HTML> End Sub

Private Sub Imag_ServerClick(ByVal sender As


System.Object, ByVal e As
System.Web.UI.ImageClickEventArgs) Handles
Imag.ServerClick
message.InnerHtml = " Vous avez cliquez en
<br>"
message.InnerHtml &= " X= " & e.X.ToString
message.InnerHtml &= " Y= " & e.Y.ToString
End Sub
End Class

Page 16 sur 61
Evénements :

Page_Init Déclenché lors de l'initialisation de la page.

Page_Load Déclenché lors du chargement de la page.

Control Event Déclenché lorsqu'un contrôle (par exemple un bouton) active le


rafraîchissement de la page.

Page_Unload Déclenché lorsque la page est déchargée de la mémoire.

Principales Propriétés :

Cache Obtient l'objet Cache associé à l'application dans laquelle réside la


page.

Controls Obtient un objet ControlCollection qui représente les contrôles


enfants d'un contrôle serveur spécifié dans la hiérarchie de
l'interface utilisateur.

EnableViewState Obtient ou définit une valeur indiquant si la page conserve son


état d'affichage, ainsi que celui de tous les contrôles serveur
qu'elle contient, à la fin de la demande de page en cours.

ErrorPage Obtient ou définit la page d'erreurs vers laquelle est redirigé le


navigateur demandeur si une exception de page non gérée se
produit.

ID Obtient ou définit un identificateur pour une instance particulière


de la classe Page.

IsPostBack Obtient une valeur indiquant si la page est en cours de


chargement soit en réponse à une publication du client, soit en
réponse à une première demande d'accès.

IsValid Obtient une valeur indiquant si la validation de la page a réussi.

Request Obtient l'objet HttpRequest pour la page demandée.

Response Obtient l'objet HttpResponse associé à la Page. Cet objet vous


permet d'envoyer des données de réponse HTTP à un client et
contient des informations sur cette réponse.

Server Obtient l'objet Server qui est une instance de la classe


HttpServerUtility.

Session Obtient l'objet Session en cours fourni par ASP.NET.

SmartNavigation Obtient une valeur indiquant si la navigation intelligente est


activée.

Trace Obtient l'objet TraceContext pour la demande Web en cours.

User Obtient des informations sur l'utilisateur effectuant la demande


de page.

Page 17 sur 61
Validators Obtient une collection de tous les contrôles de validation contenus
dans la page demandée.

TP : serveursvariables

Principales Méthodes :

Databind Réalise la liaison des données pour tous les contrôle de la page.

FindControl Recherche le contrôle serveur spécifié dans le conteneur de


dénomination en cours.

LoadControl Obtient un objet UserControl à partir d'un fichier de contrôle


utilisateur.

MapPath Extrait le chemin d'accès physique auquel un chemin d'accès


virtuel, absolu ou relatif, correspond.

Validate Commande à tout contrôle de validation inclus dans la page de


valider ses informations assignées.

Page 18 sur 61
CONTROL et HTMLCONTROL
Lorsque vous créez des pages Web Forms, vous pouvez utiliser les types de contrôles
suivants :

• Contrôles serveur HTML Éléments HTML exposés au serveur de façon à ce que vous
puissiez les programmer. Les contrôles serveur HTML exposent un modèle objet qui est
mappé très étroitement aux éléments HTML dont ils assurent le rendu.

• Contrôles serveur Web Contrôles possédant plus de fonctionnalités intégrées que les
contrôles serveur HTML. Les contrôles serveur Web incluent des contrôles de type
formulaire tels que les boutons et zones de texte et des contrôles spécialisés tels qu'un
calendrier. Les contrôles serveur Web sont plus abstraits que les contrôles serveur HTML.
Leur modèle objet ne reflète pas nécessairement la syntaxe HTML.

• Contrôles de validation Contrôles incorporant une logique qui vous permet de tester les
entrées d'utilisateur. Vous attachez un contrôle de validation à un contrôle d'entrée pour
tester les entrées d'utilisateur pour ce contrôle d'entrée.Les contrôles de validation vous
permettent de vérifier s'il existe un champ obligatoire, d'effectuer une comparaison avec
une valeur spécifique ou un modèle de caractères, de vérifier qu'une valeur est comprise
dans une plage spécifique, etc.

• Contrôles utilisateur Contrôles que vous pouvez créer en tant que pages Web Forms.
Vous pouvez incorporer des contrôles utilisateur Web Forms dans d'autres pages Web
Forms, pour créer facilement des menus, des barres d'outils et d'autres éléments
réutilisables.

CONTROL :(System.Web.UI)
C'est la classe de base de tous les contrôles serveur d'ASP.net. Que vous utilisiez des
contrôles serveur HTML ouWeb ou que vous développiez vos propres contrôles serveur, ils héritent
tous de cette classe.

Principales propriétés :

ID String Elle permet d'identifier de façon unique un contrôle dans une page. Si
vous souhaitez
pouvoir accéder aux membres (propriétés, méthodes, événements) d'un
contrôle, vous
devez lui définir son ID. Deux contrôles ne peuvent, bien entendu, avoir le
même ID.

Controls Controlcollection. Cette collection contient l'ensemble des contrôles enfant


du contrôle. Vous pouvez ainsi ajouter ou supprimer un contrôle dans
un contrôle (Add, RemoveAt, etc.).

Enableviewstate Boolean, indique si le contrôle, et ses contrôles enfant, doivent maintenir leur
état. Par défaut, elle est vraie (True).

Parent control, Tous les contrôles dans une page sont disposés hiérarchiquement
parent est une référence au contrôle qui contient le contrôle.

visible Boolean, indique si le contrôle est visible ou non.

Principales Méthodes :

DataBind Lie une source de données au contrôle serveur appelé et à tous ses contrôles
enfants.

Page 19 sur 61
Dispose Permet à un contrôle serveur d'effectuer le nettoyage final avant qu'il soit libéré
de la mémoire.

HasControls Détermine si le contrôle serveur contient des contrôles enfants.

FindControl Recherche le contrôle serveur spécifié dans le conteneur de dénomination en


cours.

Principaux Evénements (chronologie):

Phase Action qu'un contrôle doit exécuter Evénement

Initialiser Initialiser les paramètres nécessaires pendant la Init


durée de vie de la demande Web entrante.

Charger Effectuer des actions communes à toutes les Load


demandes, notamment la configuration d'une
requête de base de données.

Exécuter un Effectuer les mises à jour éventuelles avant de PreRender


rendu préalable rendre la sortie.

Décharger Effectuer le nettoyage final éventuel avant de UnLoad


détruire le contrôle. Les auteurs de contrôles
effectuent généralement le nettoyage dans
Dispose et ne gèrent pas cet événement.

HTMLCONTROL: (System.Web.UI.HtmlControls)

Page 20 sur 61
Propriétés communes:

• Attributes : Ensemble des attributs du contrôle


• Disabled : Activation/désactivation du contrôle
• Style : propriétés style du contrôle
• TagName : Type de contrôle (Div,Span ...)

HTMLCONTAINERCONTROL

Page 21 sur 61
Présence d'un tag d'ouverture et de fermeture,
peuvent contenir du code HTML)

Propriétés communes:

• InnerHTML : Représente le texte placé entre


les tags d'ouverture et de fermeture du
contrôle, elle ne code pas les caractères
spéciaux.
• InnerText : Représente le texte placé entre
les tag sd'ouverture et de fermeture du
contrôle, elle code pas les caractères
spéciaux(ex: < sera transformé en &lt;).

tp : p90

HTMLFORM
Fournit un accès par programme à l'élément HTML <form> sur le serveur.

Principales Méthodes :

Enctype Obtient ou définit le type de codage utilisé par les navigateurs lors de la publication
des données du formulaire sur le serveur.

Method Obtient ou définit une valeur qui indique la façon dont un navigateur publie les
données du formulaire sur le serveur pour traitement.

Target Obtient ou définit le frame ou la fenêtre dans lequel restituer les résultats des
informations publiées sur le serveur.

Principaux Evénements:

ServerClick Déclenché quand l'utilisateur clique sur le lien.

HTMLANCHOR
Permet un accès par programme à la balise HTML <a> sur le serveur.

Page 22 sur 61
Principales Propriétés :

Href Obtient ou définit la cible URL du lien spécifié dans le contrôle serveur HtmlAnchor.

Name Obtient ou définit le nom du signet défini dans le contrôle serveur HtmlAnchor.

Target Obtient ou définit la fenêtre ou le frame cible permettant de charger le contenu de


la page Web.

Title Obtient ou définit le texte ToolTip qui s'affiche lorsque le pointeur de la souris est
placé sur le contrôle HtmlAnchor.

Principaux Evénements:

ServerClick Déclenché quand l'utilisateur clique sur le lien.

tp : p92

HTMLBUTTON
Permet un accès par programme à la balise HTML <button> sur le serveur.
Attention le tag <button> ne fonctionne que depuis HTML 4.0 (Netscape > 4.7 ei IE >= 5.0)

Principaux Evénements:

ServerClick Déclenché quand l'utilisateur clique sur le lien.

tp : p94

HTMLSELECT
Permet un accès par programme à l'élément HTML <select> sur le serveur.

Principales Propriétés :

Items Obtient une collection qui contient les éléments répertoriés dans un contrôle
HtmlSelect.

Multiple Obtient ou définit une valeur qui indique si plusieurs éléments peuvent être
sélectionnés simultanément dans le contrôle HtmlSelect.

SelectedItem Obtient ou définit l'index ordinal de l'élément sélectionné dans un contrôle


HtmlSelect.

Size Obtient ou définit la hauteur (en lignes) du contrôle HtmlSelect.

Value Obtient la valeur de l'élément sélectionné dans le contrôle HtmlSelect ou définit


la propriété SelectedIndex du contrôle sur l'index du premier élément de la liste
comportant la valeur spécifiée.

Page 23 sur 61
DataMember Liées à source de données
DataSource
DataTextField
Datavaluefiels

Principaux Evénements:

ServerChange Se produit lorsque les éléments sélectionnés dans le contrôle HtmlSelect sont
modifiés entre deux publications sur le serveur.

tp : p97

HTMLTEXTAREA
Permet un accès par programme à l'élément HTML <textarea> sur le serveur.

Principales Propriétés :

Rows Obtient ou définit la hauteur (en caractères) du contrôle HtmlTextArea.

Cols Obtient ou définit la largeur (en caractères) du contrôle HtmlTextArea.

Value Obtient ou définit le texte entré dans le contrôle HtmlTextArea.

Principaux Evénements:

ServerChange Se produit lorsque le contenu du contrôle HtmlTextArea change entre des


publications sur le serveur.

tp : p102

HTMLINPUTBUTTON
Permet un accès par programme aux éléments HTML <input type= button>, <input type= submit>
et <input type= reset> sur le serveur.

Principales Propriétés :

Type Obtient le type de HtmlInputControl.

Value Obtient ou définit la valeur associée à HtmlInputControl.

Principaux Evénements:

ServerClick Se produit lorsqu'un clic est effectué sur un bouton HtmlInputButton sur la page
Web.

HTMLTEXTAREA
Page 24 sur 61
Permet un accès par programme à l'élément HTML <textarea> sur le serveur.

Principales Propriétés :

Rows Obtient ou définit la hauteur (en caractères) du contrôle HtmlTextArea.

Cols Obtient ou définit la largeur (en caractères) du contrôle HtmlTextArea.

Value Obtient ou définit le texte entré dans le contrôle HtmlTextArea.

Principaux Evénements:

ServerChange Se produit lorsque le contenu du contrôle HtmlTextArea change entre des


publications sur le serveur.

tp : p102

HTMLINPUTFILE
Permet un accès par programme à l'élément HTML <input type= file> sur le serveur.

Principales Propriétés :

Accept Obtient ou définit une liste des codages MIME avec la virgule comme séparateur, qui
peuvent être utilisés pour limiter les types de fichiers que l'utilisateur peut
sélectionner.

Maxlength Obtient ou définit la longueur maximale du chemin d'accès du fichier à transférer à


partir de l'ordinateur client.

PostedFile Obtient l'accès au fichier téléchargé spécifié par un client.

tp : p107

HTMLINPUTIMAGE
Permet un accès par programme à l'élément HTML <input type= image> sur le serveur.

Principales Propriétés :

Alt Obtient ou définit le texte de remplacement que le


navigateur affiche si l'image n'est pas disponible ou
n'a pas été téléchargée.

Src Obtient ou définit l'emplacement du fichier image.

Principaux Evénements :

ServerClick Se produit sur le serveur lorsqu'un utilisateur clique


sur un contrôle HtmlInputImage.

Page 25 sur 61
HTMLINPUTTEXT
Permet un accès par programme aux éléments HTML <input type= text> et <input type=
password> sur le serveur.

Principales Propriétés :

MaxLength Obtient ou définit le nombre maximal de caractères pouvant être entré dans
la zone de texte.

Size Obtient des informations sur le site Web auquel le contrôle serveur appartient.

Value Obtient ou définit le contenu de la zone de texte.

Principaux Evénements :

ServerChange Se produit lorsque la propriété Value est changée


sur le serveur.

tp : p112

HTMLIMAGE
Fournit un accès par programme pour l'élément HTML <img> sur le serveur.

Principales Propriétés :

Alt Obtient ou définit une légende de remplacement que


le navigateur affiche si une image n'est pas disponible
ou en cours de téléchargement.

Src Obtient ou définit la source du fichier image à afficher.

Width Obtient ou définit la largeur de l'image.

Height Obtient ou définit la hauteur de l'image.

tp : p115

Page 26 sur 61
WEBCONTROL: (System.Web.UI.HtmlControls)
Contrairement aux HTMLCONTROL, les WEBCONTROL n'ont pas d'équivalent HTML, a l'éxécution
de la page ces contrôles sont transformés en balises HTML classiques. La syntaxe est la
suivante :

<asp:nomducontrole ...../> ou <asp:nomducontrole .....> <asp:nomducontrole />

asp indique la classe utilisée.

Propriétés communes:

AccessKey Obtient ou définit la touche d'accès rapide (lettre


soulignée) qui vous permet de naviguer rapidement vers
le contrôle serveur Web.

Attributes Obtient la collection d'attributs arbitraires (pour le rendu


uniquement) qui ne correspondent pas à des propriétés
du contrôle.

BackColor Obtient ou définit la couleur d'arrière-plan du contrôle


serveur Web.

Page 27 sur 61
BorderColor Obtient ou définit la couleur de bordure du contrôle Web.

BorderStyle Obtient ou définit le style de bordure du contrôle serveur


Web.

BorderWidth Obtient ou définit la largeur de bordure du contrôle


serveur Web.

CssClass Obtient ou définit la classe de feuille de style en cascade


(CSS, Cascading Style Sheet) rendue par le contrôle
serveur Web sur le client.

Enabled Obtient ou définit une valeur indiquant si le contrôle


serveur Web est activé.

EnableViewState Obtient ou définit une valeur indiquant si le contrôle


serveur rend persistant son état d'affichage, ainsi que
celui de tous les contrôles enfants qu'il contient, sur le
client à l'origine de la demande.

Font Obtient les propriétés de police associées au contrôle


serveur Web.

ForeColor Obtient ou définit la couleur de premier plan


(généralement la couleur du texte) du contrôle serveur
Web.

Height Obtient ou définit la hauteur du contrôle serveur Web.

Site Obtient des informations sur le site Web auquel le


contrôle serveur appartient.

Style Obtient une collection d'attributs de texte qui sont rendus


en tant qu'attribut de style sur la balise extérieure d'un
contrôle serveur Web.

TabIndex Obtient ou définit l'index de tabulation du contrôle serveur


Web.

ToolTip Obtient ou définit le texte affiché quand le pointeur de la


souris est positionné sur le contrôle serveur Web.

Visible Obtient ou définit une valeur qui indique si un contrôle


serveur est rendu sous la forme d'une interface utilisateur
sur la page.

Width Obtient ou définit la largeur du contrôle serveur Web.

Méthodes communes :

ApplyStyle Copie tous les éléments non vides du style spécifié vers le
contrôle Web, en remplaçant les éléments de style existants du
contrôle.

MergeStyle Copie tous les éléments non vides du style spécifié vers le
contrôle Web, mais ne remplace aucun élément de style existant
du contrôle.

Page 28 sur 61
AFFICHAGE

LABEL
Représente un contrôle label, qui affiche du texte sur une page Web (<SPAN>).

Principales Propriétés :

Text Obtient ou définit le contenu du texte du contrôle


Label. N'encode pas les caractères.

IMAGE
Affiche une image sur une page Web(<IMG>).

Principales Propriétés :

AlternateText Obtient ou définit le texte de remplacement affiché dans le contrôle Image


lorsque l'image n'est pas disponible. Les navigateurs prenant en charge la
fonctionnalité d'info-bulle affichent ce texte sous forme d'info-bulle.

ImageURL Obtient ou définit l'emplacement d'une image à afficher dans le contrôle Image.

ImageAlign Obtient ou définit l'alignement du contrôle Image par rapport à d'autres éléments
sur la page Web.

PANEL
Représente un contrôle servant de conteneur pour d'autres contrôles(<DIV>).

Principales Propriétés :

BackImageURL Obtient ou définit l'URL de l'image d'arrière-plan du contrôle du


volet..

HorizontalAlign Obtient ou définit l'alignement horizontal du contenu dans le volet.

Wrap Indique si passage à la ligne automatique (par défaut)

tp: P122

Page 29 sur 61
TABLE
Crée un tableau et en définit les propriétés(<TABLE>).

Principales Propriétés :

CellSpacing Obtient ou définit la distance (en pixels) entre les cellules du tableau.

Cellpadding Obtient ou définit la distance (en pixels) entre la bordure et le contenu de la cellule
du tableau.

Gridlines Obtient ou définit une valeur qui spécifie le style de quadrillage à afficher dans le
contrôle Table.

Rows Obtient la collection des lignes figurant dans le tableau (TableRowCollection).

TableRowCollection: Encapsule une collection d'objets TableRow représentant


une seule ligne dans un contrôle Table.

TableRow : Représente une ligne dans un contrôle Table.

la collection cells de TableRow est une collection d'objets TableCell.

Cells obtient une collection d'objets TableCell qui représentent les cellules d'une
ligne dans un contrôle Table.

la méthode add de cells ajoute un TableCell à la fin de TableCellCollection.

la méthode add de rows ajoute un TableRow à la fin de TableRowCollection.

tp: P123

Page 30 sur 61
BOUTONS

BUTTON
Affiche un contrôle bouton de commande sur la page Web.(<INPUT TYPE=SUBMIT>)

Un même évenement peu réagir à plusieurs button.

Principales Propriétés :

CommandArgument Obtient ou définit un paramètre facultatif passé à l'événement Command


avec la propriété CommandName associée.

CommandName Obtient ou définit le nom de la commande associé au contrôle Button qui


est passé à l'événement Command.

Text Obtient ou définit le texte de la légende affiché dans le contrôle Button.

Principaux Evénements:

CLick Se produit lorsqu'un clic est effectué sur le contrôle Button.

Command Se produit lorsqu'un clic est effectué sur le contrôle Button.

tp: P125

HYPERLINK
Contrôle qui affiche un lien vers une autre page Web(<A>).

Principales Propriétés :

ImageURL Obtient ou définit le chemin d'accès à une image à afficher pour le contrôle
HyperLink.

NavigateURL Obtient ou définit l'URL à laquelle établir un lien lorsqu'un clic a été effectué sur le
contrôle HyperLink.

Target Obtient ou définit la fenêtre ou le frame cible pour afficher le contenu de la page
Web à laquelle un lien est établi lorsqu'un clic a été effectué sur le contrôle
HyperLink.

Text Obtient ou définit le texte de légende pour le contrôle HyperLink.

IMAGEBUTTON
Contrôle qui affiche une image et répond à des clics de souris sur l'image.

Principales Propriétés :

Page 31 sur 61
CommandArgument Obtient ou définit un paramètre facultatif passé à l'événement Command
avec la propriété CommandName associée.

CommandName Obtient ou définit le nom de la commande associé au contrôle Image qui


est passé à l'événement Command.

ImageURL Obtient ou définit l'emplacement d'une image à afficher dans le contrôle


Image.

Principaux Evénements:

CLick Se produit lorsqu'un clic est effectué sur le contrôle Image.

Command Se produit lorsqu'un clic est effectué sur le contrôle Image.

LINKBUTTON
Affiche un contrôle bouton de style lien hypertexte sur une page Web.

Principales Propriétés :

CommandArgument Obtient ou définit le nom de commande associé au contrôle LinkButton.


Cette valeur est passée au gestionnaire d'événements Command avec la
propriété CommandArgument.

CommandName Obtient ou définit le nom de la commande associé au contrôle LinkButton


qui est passé à l'événement Command.

Text Obtient ou définit le texte de la légende affiché dans le contrôle


LinkButton.

Principaux Evénements:

CLick Se produit lorsqu'un clic est effectué sur le contrôle LinkButton.

Command Se produit lorsqu'un clic est effectué sur le contrôle LinkButton.

tp: P129

Page 32 sur 61
SAISIE

TEXTBOX
Crée une zone de texte et en définit les propriété
(<INPUT TYPE=TEXT> ou <INPUT TYPE=PASSWORD> ou <TEXTEAREA></TEXTEAREA>).

Principales Propriétés :

Autopostback Obtient ou définit une valeur indiquant si une publication automatique sur le
serveur se produira à chaque modification du contenu de la zone de texte par
l'utilisateur.

Columns Obtient ou définit la largeur d'affichage de la zone de texte en caractères.

Maxlength Obtient ou définit le nombre maximal de caractères autorisés dans la zone de


texte.

Readonly Obtient ou définit une valeur qui indique si le contenu du contrôle TextBox peut
être modifié.

Rows OObtient ou définit la hauteur d'affichage d'une zone de texte multiligne.

Text Obtient ou définit le texte de la zone de texte.

Textmode Obtient ou définit le mode de comportement de la zone de texte.

Wrap Obtient ou définit le texte de la zone de texte.

Principaux Evénements:

TextChanged Se produit en cas de modification du contenu de la


zone de texte lors de la publication serveur.

tp: P133

CHECKBOX
Affiche une case à cocher qui permet à l'utilisateur de sélectionner une condition true ou false
(<INPUT TYPE=CHECKBOX>).

Principales Propriétés :

Autopostback Obtient ou définit une valeur indiquant si l'état du CheckBox publie


automatiquement sur le serveur après un clic.

Checked Obtient ou définit une valeur indiquant si le contrôle CheckBox est activé. (True
ou False)

TextAlign Obtient ou définit l'alignement de l'étiquette de texte associée au contrôle


CheckBox.

Text Obtient ou définit l'étiquette de texte associée au CheckBox.

Page 33 sur 61
Principaux Evénements:

CheckedChanged Se produit en cas de modification de la valeur de la


propriété Checked d'une publication à une autre sur
le serveur.

RADIOBUTTON
Représente un contrôle de case d'option. (<INPUT TYPE=RADIO>).

Principales Propriétés :

Autopostback Obtient ou définit une valeur indiquant si l'état du RadioButton publie


automatiquement sur le serveur après un clic.

Checked Obtient ou définit une valeur indiquant si le contrôle RadioButton est activé.

TextAlign Obtient ou définit l'alignement de l'étiquette de texte associée au contrôle


RadioButton.

Text Obtient ou définit l'étiquette de texte associée au RadioButton.

GroupName Obtient ou définit le nom du groupe auquel appartient la case d'option.

Principaux Evénements:

CheckedChanged Se produit en cas de modification de la valeur de la


propriété Checked d'une publication à une autre sur
le serveur.

tp: P135

Page 34 sur 61
LISTES

LISTCONTROL

Sert de classe de base abstraite définissant les propriétés, les méthodes et les événements
communs à l'ensemble des contrôles de type liste.

Principales Propriétés :

Autopostback Obtient ou définit une valeur indiquant si une publication sur le serveur
se produit automatiquement lorsque l'utilisateur modifie la sélection de
la liste.

DataSource Permettent de relier à une source de données le contenu de la liste


déroulante.
DataMember

DataTextField

DataTextFormatString

dataValueField

Items Obtient la collection des éléments figurant dans le contrôle de liste.

Principales Méthodes dela collection Items :

Add : Ajout à la fin de la collection.


Addat : Ajout au rang I de la collection
Clear : Vide la liste
RemoveAt :Supprime ListItem de la collection à l'index spécifié.
FindByValue :Recherche dans la collection un ListItem dont la
propriété Value contient la valeur spécifiée.
FindByText : Recherche dans la collection un ListItem dont la propriété
Text contient la valeur spécifiée.

SelectedIndex Obtient ou définit l'index ordinal le moins élevé des éléments


sélectionnés dans la liste.

SelectedItem Obtient l'élément sélectionné avec l'index le moins élevé dans le


contrôle de liste.

Page 35 sur 61
Principaux Evénements :

SelectedIndexChanged Se produit en cas de modification et de publication


sur le serveur de la sélection de la liste.(Attention
AutoPostBack doit être à True)

LISTBOX

Représente un contrôle zone de liste qui permet la sélection d'un seul ou de plusieurs éléments
(<SELECT> et <OPTION>).

Principales Propriétés :

BorderColor Obtient ou définit la couleur de bordure du contrôle.

BorderStyle Obtient ou définit le style de bordure du contrôle.

BorderWidth Obtient ou définit la largeur des bordures du contrôle.

Rows Obtient ou définit le nombre de lignes affichées dans le contrôle ListBox.

SelectionMode Obtient ou définit le mode de sélection du contrôle ListBox.

tp : p138

DROPDOWNLIST
Représente un contrôle qui permet à l'utilisateur de sélectionner un seul élément dans une liste
déroulante.(<SELECT> et <OPTION>).

Principales Propriétés :

BorderColor Obtient ou définit la couleur de bordure du contrôle.

BorderStyle Obtient ou définit le style de bordure du contrôle.

BorderWidth Obtient ou définit la largeur des bordures du contrôle.

SelectionMode Obtient ou définit le mode de sélection du contrôle ListBox.

tp : p142

Page 36 sur 61
CHECKBOXLIST/RADIOBUTTONLIST
Crée un groupe de cases à cocher ou bouton radio qui peut être généré de manière dynamique .

Principales Propriétés :

Cellpadding Obtient ou définit la distance (en pixels) entre la bordure et le contenu de la


cellule.

Cellspacing Obtient ou définit la distance (en pixels) entre les cellules.

RepeatColumns Obtient ou définit le nombre de colonnes à afficher par ligne ou colonne dans le
contrôle CheckBoxList.

RepeatDirection Obtient ou définit une valeur indiquant si le contrôle est affiché verticalement
ou horizontalement.

RepeatLayout Obtient ou définit la mise en page des cases à cocher (Table ou Flow).

TextAlign Obtient ou définit l'alignement du texte des cases à cocher du groupe.

tp : p145

Page 37 sur 61
VALIDATION

LES CONTROLES DE VALIDATION


ƒ CompareValidator
ƒ CustomValidator
ƒ RangeValidator
ƒ RegularExpressionValidator
ƒ RequiredFieldValidator

Si le navigateur supporte le DHTML les contrôles sont effectués coté client.

BASEVALIDATOR
Sert de classe de base abstraite pour des contrôles de validation.

Principales Propriétés :

ControlToValidate Obtient ou définit le contrôle d'entrée à valider.

Display Obtient ou définit le mode d'affichage du message d'erreur dans un contrôle


de validation.

None : pas d'affichage de l'erreur.


Static (Défaut) : Affichage de l'Erreur, taille du message fixée
Dynamic : Affichage de l'Erreur, taille du message Dynamique

Enabled Obtient ou définit une valeur indiquant si le contrôle de validation est activé.

EnabledClient Obtient ou définit une valeur indiquant si la validation côté client est activée.

ErrorMessage Obtient ou définit le texte du message d'erreur.

ForeColor Obtient ou définit la couleur du message affiché lorsque la validation échoue.

IsValid Obtient ou définit une valeur indiquant si le contrôle d'entrée associé est
validé.

Principales Méthodes :

Validate Effectue une validation sur le contrôle d'entrée


associé et met à jour la propriété IsValid.

REQUIREDFIELDVALIDATOR
Convertit le contrôle d'entrée associé en champ requis.

Principales Propriétés :

Page 38 sur 61
InitialValue Obtient ou définit la valeur initiale du contrôle
d'entrée associé.

BASECOMPARVALIDATOR
classe de base abstraite pour les contrôles de validation qui effectuent des comparaisons par type :
CompareValidator et RangeValidator.

Principales Propriétés :

CutoffYear Obtient l'année maximale pouvant être représentée par une année sur deux chiffres.

Type Obtient ou définit le type de données auquel les valeurs comparées sont converties
avant la comparaison.(String, Integer,Double, Date, Currency)

COMPARVALIDATOR
Compare la valeur entrée par l'utilisateur dans un contrôle d'entrée avec la valeur entrée dans un
autre contrôle d'entrée ou une constante.

Principales Propriétés :

ControlToCompare Obtient ou définit le contrôle d'entrée à valider.

ValueToCompare Obtient ou définit une constante à comparer avec la valeur entrée par
l'utilisateur dans le contrôle d'entrée en cours de validation.

Operator Obtient ou définit l'opération de comparaison à effectuer.

Equal ,
NotEqual ,
GreaterThan ,
GreaterThanEqual ,
LessThan ,
LessThanEqual ,
DataTypeCheck .

RANGEVALIDATOR
Vérifie si la valeur d'un contrôle d'entrée se trouve dans une plage de valeurs spécifiée.

Principales Propriétés :

MaximumValue Obtient ou définit la valeur maximale de la plage de


validation.

MinimumValue Obtient ou définit la valeur minimale de la plage de validation.

Page 39 sur 61
TP : p154

REGULAREXPRESSIONVALIDATOR
Valide si la valeur d'un contrôle d'entrée associé correspond au modèle spécifié par une expression
régulière.

Principales Propriétés :

ValidationExpression Obtient ou définit l'expression régulière qui


détermine le modèle utilisé pour valider un champ.

exemples :

[0-9]\d : caractères numériques

[a-z] : caractères minuscules

. : n'importe caractère sauf \n (retour ligne)

* : le caractère précédent * peut être présent 0 ou n


fois

\ : le caractère suivit de l'anti-Slash doit être


présent

| : ou (X|Y : X ou Y doit être présent)

{x} : le ou les caractères précédnet doivent être


présent x fois ( \d{5} impose la présence de 5
chiffres.

TP : p159

CUSTOMVALIDATOR
Effectue une validation définie par l'utilisateur sur un contrôle d'entrée.

Principales Propriétés :

ClientValidationFunction Obtient ou définit le nom de la fonction de script côté client


personnalisée utilisée pour la validation.

Function Obtient ou définit le nom de la fonction de script côté client


personnalisée utilisée pour la validation.

Principaux Evénements:

Servervalidate Se produit lorsque la validation est effectuée sur le


serveur.

Page 40 sur 61
TP : p161

VALIDATIONSUMMARY
Affiche un résumé de toutes les erreurs de validation en ligne sur une page Web et/ou dans un
message.

Principales Propriétés :

Showmessagebox Obtient ou définit une valeur indiquant si le résumé des validations s'affiche
dans une zone de message.

ShowSummary Obtient ou définit une valeur indiquant si le résumé des validations s'affiche
en ligne.

TP : p164

Page 41 sur 61
LES CONTROLES ENRICHIS
ƒ Adrotator
ƒ Calendar

ADROTATOR
Le contrôle AdRotator est utilisé pour afficher une bannière de publication sélectionnée de
manière aléatoire sur la page Web. La publication affichée peut changer chaque fois que la page
est actualisée.

Les informations relatives à une publication sont stockées dans un fichier XML distinct. Le fichier
XML vous permet de gérer une liste de publications et les attributs qui leur sont associés. Les
attributs comprennent le chemin d'accès à une image à afficher, l'URL à laquelle se lier lorsqu'un
clic est effectué sur le contrôle, le texte de remplacement à afficher lorsque l'image n'est pas
disponible, un mot clé et la fréquence de la publication.

Principales Propriétés :

AdvertisementFile Obtient ou définit le chemin d'accès à un fichier XML qui contient les
informations relatives à une publication.

KeyWordFilter Obtient ou définit un mot clé de catégorie pour filtrer des types spécifiques
de publications dans le fichier de publications XML.

Target Obtient ou définit le nom de la fenêtre du navigateur ou du frame qui affiche


le contenu de la page Web atteinte lorsqu'un clic a été effectué sur le
contrôle AdRotator.

Principaux événements:

AdCreated Se produit une fois par aller-retour vers le serveur


après la création du contrôle et avant que la page
soit rendue.

tp: p171

Page 42 sur 61
CALENDAR
Affiche un calendrier et permet de selectionner une date, semaine ou un moi.

Principales Propriétés :

DayNameFormat Obtient ou définit le format des noms des jours de la semaine.

FirstDayOfWeek Obtient ou définit le jour de la semaine à afficher dans la première colonne du


contrôle Calendar.

NextMonthText Obtient ou définit le texte affiché pour le contrôle de navigation vers le mois
suivant.

PrevMonthText Obtient ou définit le texte affiché pour le contrôle de navigation vers le mois
précédent.

SelectedDate Obtient ou définit la date sélectionnée.

SelectionMode Obtient ou définit le mode de sélection des dates dans le contrôle Calendar qui
spécifie si l'utilisateur peut sélectionner un jour, une semaine ou un mois.

TodaysDate Obtient ou définit la valeur à utiliser comme date du jour.

VisibleDate Obtient ou définit la date qui spécifie le mois à afficher sur le contrôle
Calendar.

PrincipauxEvénements :

DayRender Se produit lors de la création de chaque jour dans la hiérarchie des


contrôles pour le contrôle Calendar.

SelectionChanged Se produit lorsque l'utilisateur sélectionne un jour, une semaine ou un


mois entier en cliquant sur les contrôles du sélecteur de date.

VisibleMonthChanged Se produit lorsque l'utilisateur clique sur les contrôles de navigation vers
le mois suivant ou précédent dans l'en-tête du titre.

tp: p178

Page 43 sur 61
LES CONTROLES LIÉS A UNE LISTE DE DONNÉES
ƒ DataList
ƒ DataGrid
ƒ Repeater

BASEDATALIST
Sert de classe de base abstraite pour des contrôles de liste de données, tels que DataList et
DataGrid. Cette classe fournit les méthodes et propriétés communes à tous les contrôles de liste
de données.

Principales Propriétés :

Cellpadding Obtient ou définit l'espace entre le contenu d'une cellule et la bordure de celle-
ci.

Cellspacing Obtient ou définit l'espace entre les cellules.

DatakeyField Obtient ou définit le champ clé de la source de données spécifiée par la


propriété DataSource.

Datakeys Obtient DataKeyCollection qui stocke les valeurs de clé de chaque


enregistrement (affiché en tant que ligne) dans un contrôle de liste de données.

DataMember Dans une source de données multimembre, obtient ou définit des données
membres spécifiques à lier à un contrôle de liste de données.

DataSource Obtient ou définit la source contenant une liste de valeurs utilisée pour remplir
les éléments dans le contrôle.

GridLines Obtient ou définit une valeur qui spécifie si la bordure entre les cellules d'un
contrôle de liste de données est affichée.

HorizontalAlign Obtient ou définit l'alignement horizontal du contrôle de liste de données dans


son conteneur.

Principaux événements:

SelectIndexChanged Se produit lorsque, dans un contrôle de liste de


données, un élément différent est sélectionné entre
deux publications sur le serveur.

DATALIST
Ce contrôle affiche sous forme de liste l'ensemble des données. Il est décomposé en plusieurs
zones dont on peut déterminer :

ƒ Le contenu avec ses modèles


ƒ L'aspect ave son style

Personnalisation de l'aspect:

Page 44 sur 61
HeaderTemplate : En-Tête de la liste

FooterTemplate : Pied de la liste

ItemTemplate : Eléments de la liste

AlternatingItemTemplate : Eléments
alternés de la liste

SelectedItemTemplate : Elément
sélectionné

EditItemTemplate : Elément Edité

SeparatorTemplate : Séparateur des


éléménts de la liste

Principales Propriétés :

Items Obtient une collection d'objets DataListItem représentant les éléments


individuels dans le contrôle.

RepeatColumns Obtient ou définit le nombre de colonnes à afficher dans le contrôle DataList.

RepeatDirection Obtient ou définit si le contrôle DataList s'affiche verticalement ou


horizontalement.

RepeatLayout Obtient ou définit si le contrôle s'affiche dans une mise en page tableau ou
fluide.

SelectedIndex Obtient ou définit l'index de l'élément sélectionné dans le contrôle DataList.

SelectedItem Obtient l'élément sélectionné dans le contrôle DataList.r, une semaine ou un


mois.

EditItemIndex Obtient ou définit le numéro d'index de l'élément sélectionné dans le contrôle


DataList à modifier.

PrincipauxEvénements :

CancelCommand Se produit lorsqu'un clic est effectué sur un contrôle déclenchant un


commandname Cancel .

DeleteCommand Se produit lorsqu'un clic est effectué sur un contrôle déclenchant un


commandname Delete .

Page 45 sur 61
EditCommand Se produit lorsqu'un clic est effectué sur un contrôle déclenchant un
commandname Edit .

ItemCommand Se produit lorsqu'un clic est effectué sur n'importe quel bouton dans le
contrôle DataList.

ItemCreated Se produit sur le serveur lorsqu'un élément dans le contrôle DataList est créé.

ItemDataBound Se produit lorsqu'un élément est lié aux données du contrôle DataList.

updateCommand Se produit lorsqu'un clic est effectué sur un contrôle déclenchant un


commandname Update .

Liaison avec les données : <%# container.dataitem%>

tp: p193

DATAGRID
Contrôle de liste lié à des données qui affiche les éléments provenant de la source de données dans
un tableau. Le contrôle DataGrid vous permet de sélectionner, trier et modifier ces éléments.

ƒ Le contenu avec ses modèles


ƒ L'aspect ave son style

Personnalisation de l'aspect:

HeaderStyle : En-Tête de la liste

FooterStyle : Pied de la liste

ItemStyle : Eléments de la liste

AlternatingItemStyle : Eléments alternés de la liste

SelectedItemStyle : Elément sélectionné

EditItemStyle: Elément Edité

PagerStyle : Pagination

Types de colonnes :

BoundColumn Type de colonne pour le contrôle DataGrid qui est lié à un champ dans
une source de données.

ButtonColumn Type de colonne pour le contrôle DataGrid qui contient un bouton de


commande défini par l'utilisateur, tel que Add ou Remove, qui correspond
avec chaque ligne de la colonne.

EditCommandColumn Type de colonne spécial pour le contrôle DataGrid qui contient les
boutons de commande Modifier pour modifier des éléments de données
dans chaque ligne.

HyperlinkColumn Type de colonne du contrôle DataGrid contenant un lien hypertexte pour


chaque élément de la colonne.

TemplateColumn Représente un type de colonne pour le contrôle DataGrid qui vous

Page 46 sur 61
permet de personnaliser la disposition des contrôles dans la colonne.

Principales Propriétés :

AllowPaging Obtient ou définit une valeur indiquant si la pagination est activée.

AllowSorting Obtient ou définit une valeur indiquant si le tri est activé.

Columns Obtient une collection d'objets représentant les colonnes du contrôle


DataGrid.

CurrentPageIndex Obtient ou définit l'index de la page actuellement affichée.

EditItemIndex Obtient ou définit l'index d'un élément du contrôle DataGrid à modifier.

Items Obtient une collection d'objets DataGridItem représentant les éléments


individuels du contrôle DataGrid.

PageCount Obtient le nombre total de pages requises pour afficher les éléments figurant
dans le contrôle DataGrid.

PageSize Obtient ou définit le nombre d'éléments à afficher sur une même page du
contrôle DataGrid.

SellectedIndex Obtient ou définit l'index de l'élément sélectionné dans le contrôle DataGrid.

Pagecount Obtient le nombre total de pages requises pour afficher les éléments figurant
dans le contrôle DataGrid.

PrincipauxEvénements :

CancelCommand Se produit lorsqu'un clic est effectué sur un contrôle déclenchant un


commandname Cancel .

DeleteCommand Se produit lorsqu'un clic est effectué sur un contrôle déclenchant un


commandname Delete .

EditCommand Se produit lorsqu'un clic est effectué sur un contrôle déclenchant un


commandname Edit .

ItemCommand Se produit lorsqu'un clic est effectué sur n'importe quel bouton dans le
contrôle DataList.

ItemCreated Se produit sur le serveur lorsqu'un élément dans le contrôle DataList est
créé.

ItemDataBound Se produit lorsqu'un élément est lié aux données du contrôle DataList.

PageIndexChanged Se produit après un clic sur l'un des éléments de sélection de page.

SortCommand Se produit lorsqu'une colonne est triée.

updateCommand Se produit lorsqu'un clic est effectué sur un contrôle déclenchant un


commandname Update .

exemple: htt p : // a s px .fit ec h.f r /li st e. a s px

Page 47 sur 61
REPEATER
Affiche ce que DataList et Datagrid ne peuvent afficher. Contrôle de liste lié aux données
permettant une présentation personnalisée, grâce à l'application d'un modèle spécifié à chacun des
éléments figurant dans la liste.

Personnalisation de l'aspect:

HeaderTemplate : En-Tête de la liste

FooterTemplate : Pied de la liste

ItemTemplate : Eléments de la liste

AlternatingItemTemplate : Eléments alternés de la liste

SeparatorTemplate : Séparateur des éléménts de la liste

Principales Propriétés :

Items Obtient une collection d'objets RepeaterItem dans le


contrôle Repeater.

Principaux Evénements :

ItemCommand Se produit en cas de clic sur un bouton dans le contrôle Repeater.

ItemCreated Se produit lors de la création d'un élément dans le contrôle Repeater.

ItemDataBound Se produit après la liaison d'un élément à des données dans le contrôle
Repeater, mais avant sa restitution sur la page.

Liaison avec les données : <%# container.dataitem%>

tp: p205

Page 48 sur 61
Vue d'ensemble de ADO.NET
ADO.NET est une évolution du modèle d'accès aux données ADO ,Il a été conçu spécifiquement
pour Internet en gardant à l'esprit les aspects d'évolutivité, d'indépendance et XML.

ADO.NET utilise certains objets ADO, tels que les objets Connection et Command, et apporte
également de nouveaux objets. Les principaux nouveaux objets ADO.NET sont DataSet,
DataReader et DataAdapter.

Pour gérer des connexions à une base de données, vous avez deux possibilités :

ƒ un fournisseur de données SQL Server .NET


(System.Data.SqlClient)
ƒ un fournisseur de données OLE DB .NET

les fournisseurs de données OLE DB et SQL Server .NET (System.Data.OleDb et


System.Data.SqlClient) qui font partie du .NET Framework apportent cinq objets de base :

Connection Pour se connecter à et gérer des transactions avec une base de données:

OleDbConnection : fournisseur OLE-DB ou pilote OLE-DB/ODBC

SqlConnection : fournisseur SQL Server

Command Pour émettre des commandes SQL sur une base de données.

OledbCommand : avec fournisseur OLE-DB ou pilote OLE-DB/ODBC

SqlCommand : avec fournisseur SQL Server

Page 49 sur 61
DataAdapter Un DataAdapter est l'objet qui se connecte à la base de données pour remplir le
DataSet. Ensuite, il se connecte de nouveau à la base de données pour mettre à
jour ses données, à partir des opérations effectuées pendant que le DataSet
contient les données.

OledbDataAdapter : avec fournisseur OLE-DB ou pilote OLE-DB/ODBC

SqlDataAdapter : avec fournisseur SQL Server

L'objet DataAdapter utilise des commandes pour mettre à jour la source de


données après que des modifications aient été apportées au DataSet.

Quand elle est utilisée, la méthode Fill du DataAdapter appelle la commande


SELECT,

Quant elle est utilisée, la méthode Update, appelle la commande INSERT,


UPDATE ou DELETE pour chaque ligne modifiée. Vous pouvez explicitement
définir ces commandes afin de contrôler les instructions utilisées au moment de
l'exécution pour résoudre les modifications, y compris en utilisant des procédures
stockées.

DataReader Pour lire un flux d'enregistrements de données en avance seule à partir d'une
source de données.

OledbDataReader : avec fournisseur OLE-DB ou pilote OLE-DB/ODBC

SqlDataReader : avec fournisseur SQL Server

DataSet L'objet DataSet basé sur XML constitue un modèle de programmation cohérent
qui fonctionne avec tous les modèles de magasins de données : à deux
dimensions (flat), relationnel et hiérarchique.

OledbDataDataset : avec fournisseur OLE-DB ou pilote OLE-DB/ODBC

SqlDataDataset: avec fournisseur SQL Server

les DataSet fonctionnent comme une entité autonome. Vous pouvez


considérer le DataSet comme un jeu d'enregistrements toujours déconnecté qui
ne connaît rien de la source ou de la destination des données qu'il contient.

Il remplit sa fonction sans aucune « connaissance » de la source de ses données et


en représentant les données qu'il contient sous forme de collections et de types de
données. Quelle que soit la source des données dans le DataSet, elle est
manipulée par l'intermédiaire du même jeu d'API standard exposé par
l'intermédiaire du DataSet et de ses objets dépendants.

Page 50 sur 61
Objets Connection :
Représente une connexion ouverte à une base de données .

Principales propriétés:

Connectionstring Obtient ou définit la chaîne permettant d'ouvrir une base de données.

ConnectionTimeout Obtient la durée d'attente préalable à l'établissement d'une connexion


avant que la tentative ne soit abandonnée et qu'une erreur ne soit
générée.

DataBase Obtient le nom de la base de données en cours ou de la base de données à


utiliser une fois la connexion ouverte.

DataSource Obtient le nom de l'instance à laquelle se connecter.

Principales Méthodes:

Open Ouvre une connexion à une base de données avec les paramètres de
propriété spécifiés par ConnectionString.

Close Ferme la connexion à la base de données. Il s'agit de la méthode privilégiée


pour la fermeture de toute connexion ouverte.

ChangeDatabase Modifie la base de données en cours d'un SqlConnection ouvert.

CreateCommand Crée et retourne un objet Command associé à Connection.

BeginTransaction Commence une transaction de base de données, crée un objet Transaction.

Constructeurs :

Dim Conn as New OleDbConnection

Dim Conn as New


OleDbConnection(ConnectionString)

Dim Conn as New SqlConnection

Dim Conn as New SqlConnection(ConnectionString)

Exemple :

Dim conn As New SqlClient.SqlConnection("data source=srsql2.fitech.fr;initial


catalog=formation-dicone;password=dicone;user id=formation")

Page 51 sur 61
Objets Command :
Représente une instruction Transact-SQL ou une procédure stockée à exécuter par rapport à une
base de données.

Principales propriétés:

CommandText Obtient ou définit l'instruction Transact-SQL ou la procédure stockée à exécuter


au niveau de la source de données.

CommandType Obtient ou définit une valeur indiquant la manière dont la propriété


CommandText doit être interprétée (Text, StoredProcedure, TableDirect)

Connection Obtient ou définit la Connection utilisé par cette instance.

Parameters Obtient ParameterCollection utilisé par l'instruction Transac-Sql ou la procédure


stockée.

Propriétés de Parameter:

Direction Obtient ou définit une valeur indiquant si le paramètre est


un paramètre d'entrée uniquement, de sortie uniquement,
bidirectionnel ou de valeur de retour d'une procédure
stockée.
ColumnSource Obtient ou définit le nom de la colonne source qui est
mappée à DataSet et qui est utilisée pour charger ou
retourner Value.
SourceVersion Obtient ou définit le DataRowVersion à utiliser lors du
chargement de Value ( Original,Current)

Méthode de Parameters:

add Ajoute un parameter à la collection

Principales méthodes:

ExecuteReader Utilise un objet reader et et éxécute la commande définie dans la propriété


CommandText.

ExecuteNonQuery Exécute la commande définie dans la propriété CommandText, telle que


des instructions Transact-SQL INSERT, DELELE, UPDATE et SET.

ExecuteScalar Utilise un objet reader et exécute la requête et retourne la première


colonne de la première ligne du jeu de résultats retourné par la requête.
Les colonnes ou lignes supplémentaires sont ignorées.

ExecuteXmlReader Envoie CommandText à Connection et génère un objet XmlReader.

Page 52 sur 61
Constructeurs :

Dim myCommand as New OleDbCommand


Dim myCommand as New OleDbCommand(CommandText)
Dim myCommand as New OleDbCommand(CommandText,Connection)
Dim myCommand as New
OleDbCommand(CommandText,Connection,Transaction)

Dim myCommand as New SqlCommand


Dim myCommand as New SqlCommand(CommandText)
Dim myCommand as New SqlCommand(CommandText,Connection)
Dim myCommand as New SqlCommand(CommandText,Connection,Transaction)

Exemple :

Dim conn As New SqlClient.SqlConnection("data source=srsql2.fitech.fr;initial


catalog=formation-dicone;password=dicone;user id=formation")

Dim myCommand As New SqlClient.SqlCommand()

Dim nblines As Integer

conn.Open()

myCommand = conn.CreateCommand()

myCommand.CommandText = "update produit set reference='11111111' where


reference is null"

Try
nblines = myCommand.ExecuteNonQuery()
Message.Text = "Nombre de lignes mise à jour : " & nblines
Catch ex As SqlClient.SqlException
message.text = "Erreur lors de la requete"

Page 53 sur 61
Objets DATAREADER:
Fournit un mode de lecture d'un flux de lignes avant uniquement à partir d'une base de données .

Principales propriétés:

FieldCount Obtient le nombre de colonnes figurant dans la ligne en cours.

IsClosed Obtient une valeur indiquant si le lecteur de données est fermé.

Item Obtient la valeur d'une colonne dans son format natif.

Principales méthodes:

GetBoolean Obtient la valeur de la colonne spécifiée sous la forme d'un objet de type spécifié.
GetString
GetDouble
GetInt16
...

GetValue Obtient la valeur de la colonne spécifiée dans son format natif.

IsDBNull Obtient une valeur indiquant si la colonne contient des valeurs inexistantes ou
manquantes.

Close Ferme l'objet SqlDataReader

Read Avance SqlDataReader jusqu'au prochain enregistrement.

Exemple :

Dim conn As New SqlClient.SqlConnection("data source=srsql2.fitech.fr;initial


catalog=formation-dicone;password=dicone;user id=formation")

conn.Open()

Dim myCommand As New SqlClient.SqlCommand()

myCommand = conn.CreateCommand

myCommand.CommandText = "select * from produit"

Dim dr As Data.SqlClient.SqlDataReader

dr = myCommand.ExecuteReader()

Do While dr.Read
Message.Text = Message.Text & dr("reference") & "<br>"
Loop

dr.close()

conn.dispose()

tp: p319

Page 54 sur 61
Objets DATAADAPTER:
Représente un ensemble de commandes de données et une connexion à une base de données qui
permettent de remplir DataSet et de mettre à jour une base de données

Principales propriétés:

DeleteCommand, Obtient ou définit une instruction Transact-SQL ou une procédure


InsertCommand, stockée pour supprimer,insérer,selectionner,mettre à jour des
SelectCommant, enregistrements du groupe de données.
UpdateCommand

Principales méthodes:

Fill Ajoute ou actualise des lignes de DataSet pour qu'elles correspondent à celles de la
source de données.

FillSchema Utilise la commande SelectCommand pour extraire le schéma d'une table dans la
source de données et crée une table vide avec toutes les contraintes
correspondantes dans l'objet DataSet.

Update Obtient la valeur d'une colonne dans son format natif.

Dispose Appelle les instructions INSERT, UPDATE ou DELETE respectives pour chaque ligne
insérée, mise à jour ou supprimée dans DataSet.

Construteurs :

Dim myAd as New OleDbDataAdapter


Dim myAd as New OleDbDataAdapter(command)
Dim myAd as New OleDbDataAdapter(command,Connection)

Avec création automatique de l'objet connection :


Dim myAd as New OleDbDataAdapter(command,ConnectionString)

Dim myAd as New SqlDataAdapter


Dim myAd as New SqlDataAdapter(command)
Dim myAd as New SqlDataAdapter(command,Connection)

Avec création automatique de l'objet connection :


Dim myAd as New SqlDataAdapter(command,ConnectionString)

Page 55 sur 61
Objets DATASET:
Représente un cache en mémoire de données, "copie d'un extrait de la base de données".

DataSet est constitué:

• d'une collection d'objets DataTable


o Chaque table est constituée d'une collection de
ƒ lignes(rows) : représente un enregistrement
ƒ colonnes(columns), : représente un champ
ƒ contraintes(constraint)

• d'une collection d'objets DataRelation.

Principales méthodes:

Clear Efface toutes les données de DataSet en supprimant toutes les lignes de l'ensemble
des tables.

Merge Fusionne ce DataSet avec un DataSet spécifié.

ReadXML Lit le schéma et les données XML dans DataSet.

WriteXML Écrit des données XML, et éventuellement le schéma, à partir de DataSet.

Exemple :

Dim sconn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data


Source=C:\inetpub\wwwroot\base\bd1.mdb;
"
Dim ds As New DataSet()

Dim madapt As New OleDb.OleDbDataAdapter("select * from


produit", sconn)

madapt.Fill(ds, "produit")

Page 56 sur 61
madapt.SelectCommand.CommandText = "select * from
categorie"

madapt.Fill(ds, "categorie")

liste.DataSource = ds
liste.DataMember = "produit"
liste.DataTextField = "reference"
liste.DataValueField = "N°"

liste1.DataSource = ds
liste1.DataMember = "categorie"
liste1.DataTextField = "libelle"
liste1.DataValueField = "N°"
Page.DataBind()

ds.Dispose()
madapt.Dispose()

Accés à un champ du Dataset :

ds.Tables("produit").Rows(1)("reference")

ou

ds.Tables(0).Rows(1)("reference")

TP : p334

TP : p334bis

TP : 359 (Datagrid)

TP: 335

Page 57 sur 61
OBJETS SPECIFIQUES ASP.Net:
Objet utilisés pour le stockage de données entre les pages

Page.ViewState Stockage de données spécifique à une page et à un utilisateur.

Session Stockage de données pour toutes les pages de l'application et spécifique à


un utilisateur.

Application Stockage de données pour toutes les pages de l'application et tous les
utilisateurs.

Cache Stockage de données pour toutes les pages de l'application et tous les
utilisateurs, plus maniable que Applicationr.

CACHE
Une instance de cette classe est créée par domaine d'application et elle demeure valide tant que le
domaine d'application reste actif. On peut spécifier une durée de vie.

cache.insert("DSN",connectionString)

L'exemple suivant montre comment insérer un élément dans le cache d'une application
avec une expiration absolue l'objet sera supprimé du cache 2 minutes après sa
déclaration.

Cache.Insert("DSN", connectionString, Nothing, DateTime.Now.AddMinutes(2),


TimeSpan.Zero)

L'exemple suivant montre comment insérer un élément dans le cache avec une
expiration décalée, l'objet sera supprimé du cache 10 secondes aprés son dernier accès.

Cache.Insert("DSN", connectionString, Nothing, DateTime.MaxValue,


TimeSpan.FromSeconds(10))

cache.remove("DSN")

Page 58 sur 61
Opération sur les Fichiers-Dossiers (SYSTEM.IO)

FILESTREAM
FileStream est utile pour la lecture et l'écriture de fichiers sur un système de fichiers, ainsi que
sur d'autres handles du système d'exploitation liés aux fichiers (notamment les canaux, les entrées
et sorties standard, etc.). FileStream met les entrées et sorties en mémoire tampon pour optimiser
les performances.

Public Sub New( ByVal path As String, ByVal mode As FileMode, ByVal access As
FileAccess )

FileMode Append, Create, CreateNew, Open,OpenOrCreate,Truncate

access Read, ReadWrite, Write

LECTURE : STREAMREADER(FileStream)

Dim fs As New IO.FileStream(Fic.FullName, IO.FileMode.Open, IO.FileAccess.Read)


Dim sr As New IO.StreamReader(fs)
detail.Text = sr.ReadToEnd
sr.Close()

ECRITURE : STREAMWRITER(FileStream)

Dim fs As New IO.FileStream(Labelfichier.Text, IO.FileMode.Create, IO.FileAccess.Write)


Dim sw As New IO.StreamWriter(fs)
sw.WriteLine(detail.Text)
sw.Close()

GESTION DE FICHIERS:
4 Classes éssentielles, Directory, File, DirectoryInfo, FileInfo

3 membres de directory retournent des tableaux contenant :

o Les disques logiques du serveur GetLogicalDrives


o Les sous-dossiers d'un dossier GetDirectories
o Les fichiers d'un dossier GetFiles

Exemple : récupération de fichier d'un répertoire

Dim Fichier As String


Dim lfichier As Array
Dim LFic As New ArrayList()
lfichier = IO.Directory.GetFiles(Server.MapPath(repertoire), "*.htm")
For Each Fichier In lfichier
LFic.Add(New IO.FileInfo(Fichier))
Next

TP : P272

Page 59 sur 61
Envoi d'un EMAIL (SYSTEM.WEB.MAIL)

MailMessage : Message à envoyer

MailAttachment : Fichiers joints

SmtpMail : Envoi du Message

Exemple : Envoi d'un message

Dim Fmail As New Mail.MailMessage()


With Fmail
.From = Efrom.Text
.To = Eto.Text
.Subject = Esujet.Text
.Body = Ebody.Text
If file.Value <> "" Then
file.PostedFile.SaveAs(Server.MapPath("/temp/") & "/fichier.txt")
Dim ofile As New Mail.MailAttachment("/fichier.txt")
.Attachments.Add(ofile)
End If
Try
Mail.SmtpMail.Send(Fmail)
Catch ex As Exception
message.InnerText = ex.Message.ToString
End Try
End With

TP : P295

Page 60 sur 61
TRACAGE D'INFORMATION

Implémentation dans la page par : <@ Page Trace="True">

2 méthodes : Trace.write et Trace.warn


h tt p : // loc alh o st / p38 0. as p x

Page 61 sur 61

Vous aimerez peut-être aussi