Le composant d'infrastructure de pages ASP.NET Web Forms est un modèle de programmation Common Language Runtime évolutif qui peut être utilisé pour générer dynamiquement des pages Web. Le composant ASP.NET Page Framework est une évolution logique d'ASP (la syntaxe fournie par ASP.NET est compatible avec les pages existantes) et il a été spécifiquement conçu pour combler un certain nombre de lacunes critiques du modèle précédent. En particulier, il offre la possibilité de créer et d'utiliser des contrôles d'interface utilisateur réutilisables qui encapsulent des fonctionnalités communes, réduisant ainsi la quantité de code que les développeurs de pages doivent écrire. Il permet aux développeurs d'être clairs et organisés. Il construit une logique de page (et non un « code enchevêtré »). ); les outils de développement qu'il utilise offrent de puissantes capacités de prise en charge de la conception de pages WYSIWYG (ce que vous voyez est ce que vous obtenez) (le code ASP traditionnel existant est opaque). Cet article présente quelques connaissances de base sur les fonctionnalités des pages ASP.NET.
Écrire votre première page ASP.NET
Les pages ASP.NET sont des fichiers texte avec une extension .aspx. Les pages sont composées de code et de balises qui sont compilées et exécutées dynamiquement sur le serveur pour générer du contenu d'affichage pour le navigateur (ou périphérique) client demandeur. Ils peuvent être déployés sous l'arborescence des répertoires virtuels IIS. Lorsque le client du navigateur demande une ressource .aspx, le runtime ASP.NET analyse le fichier cible et le compile dans une classe de framework .NET. Cette classe peut ensuite être utilisée pour gérer dynamiquement la demande (veuillez noter que le fichier .aspx est uniquement). compilée lors du premier accès, et l'instance de type compilée peut être réutilisée pour plusieurs requêtes ultérieures).
Nous n'avons pas besoin de modifier le code du fichier HTML. Il suffit de changer son extension en .aspx pour créer une page ASP.NET. Par exemple, l'exemple suivant montre une simple page HTML qui collecte le nom et la catégorie de l'utilisateur et renvoie le formulaire à la page d'origine lorsque l'utilisateur clique sur un bouton :
<form action="intro1_vb.aspx" method= "post">
<h3> Nom : <input id="Nom" type=text>
Catégorie : <select id="Category" size=1>
<option>psychologie</option>
<option>affaires</option>
<option>popular_comp</option>
</sélectionner>
<type d'entrée=valeur de soumission="Recherche">
</h3>
</form>
Attention : rien ne se passe lorsque vous cliquez sur le bouton "Recherche". En effet, le fichier .aspx ne contient que du HTML statique (pas de contenu dynamique). Par conséquent, le même code HTML est renvoyé au client, entraînant la perte du contenu du champ de formulaire (zone de texte et liste déroulante).
Ajouter du code simple à la page
La syntaxe fournie par ASP.NET est compatible avec la page ASP. Il prend en charge les blocs de rendu de code <% %> (render), qui peuvent être mélangés avec du contenu HTML dans des fichiers .aspx. Ces blocs de code seront strictement exécutés lors de l'affichage de la page.
L'exemple suivant montre comment utiliser les blocs de rendu <% %> (en augmentant la taille de la police à chaque fois) en HTML :
<form action="intro2_vb.aspx" method="post">
<h3> Nom : <input id="Nom" type=text>
Catégorie : <select id="Category" size=1>
<option>psychologie</option>
<option>affaires</option>
<option>popular_comp</option>
</sélectionner>
</h3>
<type d'entrée=valeur de soumission="Recherche">
<p>
<% Dim I sous forme d'entier
Pour I = 0 à 7 %>
<font size="<%=I%>"> Bienvenue sur ASP.NET </font> <br>
<%Suivant %>
</form>
Veuillez noter : le bloc de code <% %> dans l'exemple ci-dessus est différent de ASP dans le sens où il sera en réalité compilé - et non interprété par le moteur de script. Cela améliore les performances d’exécution de l’exécution.
Les développeurs de pages ASP.NET peuvent utiliser des blocs de code <% %> pour modifier dynamiquement les informations de sortie HTML. Par exemple, le code suivant montre comment utiliser le bloc de code <% %> pour interpréter les résultats renvoyés par le client :
<form action="intro3_vb.aspx">
<h3> Nom : <input name="Name" type=text value="<%=HttpUtility.HtmlEncode(Request.QueryString("Name"))%>">
Catégorie : <select name="Category" size=1>
<%
Dim I comme entier
Valeurs faibles (2) sous forme de chaîne
Valeurs(0) = "psychologie"
Valeurs(1) = "entreprise"
Valeurs(2) = "popular_comp"
Pour I = 0 à Values.Length - 1
%>
<% If (Request.QueryString("Category") = Values(i)) %>
<option sélectionnée>
<% Sinon %>
<option>
<%Fin Si %>
<%=Valeurs(i)%>
</option>
<%Suivant %>
</sélectionner>
</h3>
<input type=submit name="Recherche" valeur="Recherche">
<p>
<% If (Not Request.QueryString("Lookup") = Nothing) %>
Bonjour <%=HttpUtility.HtmlEncode(Request.QueryString("Name")) %>, vous avez sélectionné : <%=HttpUtility.HtmlEncode(Request.QueryString("Category")) %>
<%Fin Si %>
</form>
Remarque : bien que les blocs de code <% %> nous fournissent un moyen puissant de personnaliser les informations de sortie de texte renvoyées par les pages ASP.NET, ils ne fournissent pas un modèle de programmation HTML clair. L'exemple ci-dessus montre que les développeurs qui utilisent uniquement le bloc de code <% %> doivent gérer eux-mêmes l'état de la page et intercepter les valeurs envoyées.