Cet article présente les expressions ASP.NET en ligne suivantes:

  • <% ...%>
  • <% = ...%>
  • <% @ ...%>
  • <% # ...%>
  • <% $ ...%>
  • <% - ... -%>

Version originale du produit: Framework .NET
Numéro KB d’origine: 976112

<% ...%> blocs de code intégrés

Le bloc de code intégré est utilisé pour assurer la compatibilité descendante avec ASP classique. Le code dans le bloc peut exécuter des instructions de programmation et appeler des fonctions dans la classe de page courante pendant la phase de rendu de page.

L’exemple suivant montre une page ASP.NET d’un exemple de code Microsoft Visual Basic .NET dans un bloc de code incorporé pour afficher les résultats d’une boucle:

<%@ Page Language="VB" %>
<html>
<body>
    <form id="form1" runat="server">
        <% For i As Integer = 16 To 24 Step 2%>
            <div style="font-size: <% Response.Write(i)%>">
                Hello World<br />
            </div>
        <% Next%>
    </form>
</body>
</html>

Puisqu’un bloc de code incorporé est toujours mélangé avec la source HTML (HyperText Markup Language), il est difficile pour les développeurs de le lire et de le maintenir.

Pour plus d’informations sur les blocs de code incorporés dans les pages Web ASP.NET, consultez Blocs de code incorporés dans les pages Web Forms ASP.NET.

<% = ...%> affiche l’expression

le <%= ... %> L’affichage de l’expression correspond au bloc de code incorporé, qui ne contient que le Response.Write(...) Déclaration. C’est le moyen le plus simple d’afficher des informations telles qu’une seule chaîne, une variable int ou une constante.

Par exemple, l’exemple de code suivant affiche l’heure actuelle:

<%@ Page Language="VB" %>
<html>
    <body>
        <form id="form1" runat="server">
            <%=DateTime.Now.ToString() %>
        </form>
    </body>
</html>

N’oubliez pas que l’expression d’affichage ne peut pas être utilisée dans les attributs des contrôles serveur. En effet, le .NET Framework compile l’expression entière directement, plutôt que d’afficher le contenu affiché en tant que valeur de l’attribut.

Pour plus d’informations sur l’affichage des informations à partir d’ASP.NET, consultez Affichage d’ASP.NET.

<% @ ...%> Expression directive

L’expression de directive est la syntaxe qui spécifie les paramètres qui seront utilisés par la page et par les compilateurs de contrôle utilisateur lors du traitement des pages ASP.NET Web Form (ASPX) et des fichiers de contrôle utilisateur (ASCX).

Le framework de page ASP.NET prend en charge les instructions suivantes:

Directif la description
@ Page Définit les attributs spécifiques à la page utilisés par l’analyseur et le compilateur de page ASP.NET. Ne peut être inclus que dans les fichiers ASPX.
Ce nom de directive ne peut être utilisé que sur les pages de formulaire Web ASP.NET.
@ Control Définit les attributs spécifiques au contrôle utilisés par l’analyseur et le compilateur de page ASP.NET. Ne peut être inclus que dans les fichiers .ascx (contrôles utilisateur).
Le nom de la directive ne peut être utilisé que dans les fichiers de contrôle utilisateur.
@ Import Importe explicitement un espace de noms dans une page ou un contrôle utilisateur.
@ Implements Indique de manière déclarative qu’une page ou un contrôle utilisateur implémente une interface .NET Framework spécifiée.
@ Register Mappe les alias aux espaces de noms et aux noms de classe. Cela permet le rendu des contrôles utilisateur et des contrôles serveur personnalisés lorsqu’ils sont contenus dans une page ou un contrôle utilisateur demandé.
@ Assembly Lie un assemblage à la page en cours lors de la compilation. Il rend toutes les classes et interfaces de l’assembly disponibles pour une utilisation sur la page.
@ Master Identifie une page maître ASP.NET.
@ WebHandler Identifie une page IHttpHandler ASP.NET.
@ PreviousPageType Fournit un moyen d’obtenir une entrée forte pour la page précédente accessible via la propriété PreviousPage.
@ MasterType Attribue un nom de classe à la propriété master d’une page ASP.NET. Fournit un moyen de créer une référence fortement typée à la page maître ASP.NET.
@ OutputCache Contrôle de manière déclarative les stratégies de mise en cache de la sortie d’une page ou d’un contrôle utilisateur.
@ Reference Lie de manière déclarative une page ou un contrôle utilisateur à la page ou au contrôle utilisateur en cours.

Pour plus d’informations sur la syntaxe des directives, consultez Syntaxe de la stratégie de modèle de texte.

<% # ...%> Expression de liaison de données

L’expression de liaison de données crée une liaison entre une propriété de contrôle serveur et une source de données lorsque la méthode DataBind du contrôle de ce contrôle serveur est appelée sur la page.

L’exemple suivant montre comment utiliser l’expression de liaison de données pour lier la chaîne d’une fonction à la propriété Text d’une étiquette:

<%@ Page Language="VB" %>
<script runat="server">
    Protected Function SayHello() As String
        Return "Hello World"
    End Function

    Protected Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs)
        lblHello.DataBind()
    End Sub
</script>
<html>
    <body>
        <form id="form1" runat="server">
            <asp:Label ID="lblHello" runat="server" Text="<%# SayHello%>"></asp:Label>
        </form>
    </body>
</html>

Pour plus d’informations sur la syntaxe des expressions de liaison de données, consultez Syntaxe d’expression de liaison de données.

<% $ ...%> Générateur d’expression

Le générateur d’expression est utilisé pour définir les valeurs des propriétés de contrôle en fonction des informations contenues dans la configuration d’une application ou les fichiers de ressources. L’exemple suivant est la syntaxe de base du générateur d’expressions:
<%$ Expression Prefix: Expression Value %>

Le signe dollar ($) indique à ASP.NET que l’expression suivante est un générateur d’expression. Le préfixe d’expression définit le type d’expression, par exemple AppSettings, ConnectionStrings, ou alors Resources. Vous pouvez également créer et définir votre propre générateur d’expressions. La valeur d’expression qui suit les deux points (:) est en fait utilisée par ASP.NET comme valeur d’une propriété spécifique.

La démo suivante montre comment utiliser Expression Builder pour obtenir les droits d’auteur d’un site Web à partir du site Web AppSettings Nœud dans le Web.config File et comment définir les informations de copyright comme valeur de la propriété Text du littéral.

le AppSettings Noeud dans Web.config Déposer:

<appSettings>
    <add key="copyright" value="(c) Copyright 2009 WebSiteName.com"/>
</appSettings>

Expression Builder sur la page de formulaire Web ASP.NET:

<div id="footer">
    <asp:Literal ID="Literal1" runat="server" Text="<%$ AppSettings: copyright %>"></asp:Literal>
</div>

Pour plus d’informations sur les expressions ASP.NET, consultez Vue d’ensemble des expressions ASP.NET.

Le bloc de commentaires côté serveur permet aux développeurs d’incorporer des commentaires de code n’importe où dans la source HTML des pages de formulaire Web ASP.NET (sauf dans <script> Blocs de code). Le contenu entre les balises d’ouverture et de fermeture du bloc de commentaires côté serveur n’est pas traité sur le serveur ni rendu sur la page résultante.

L’exemple de code suivant montre comment utiliser le bloc de commentaires côté serveur sur une page ASP.NET:

<%@ Page Language="VB" %>
<script runat="server">
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
        Dim strName As String
        strName = Session("userName")
        lblUserName.Text = strName
    End Sub
</script>
<html>
    <body>
        <form id="form1" runat="server">
            <%-- Label for UserName --%>
            <asp:Label ID="lblUserName" runat="server" Text=""></asp:Label>
        </form>
    </body>
</html>

Pour plus d’informations sur les commentaires côté serveur, consultez Commentaires côté serveur.



Source link

Recent Posts