Freigeben über


ASP.NET Inlineausdrücke in .NET Framework

Dieser Artikel enthält eine Einführung in die folgenden ASP.NET Inlineausdrücke:

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

Originalproduktversion: .NET Framework
Ursprüngliche KB-Nummer: 976112

<% ...> eingebettete Codeblöcke

Der eingebettete Codeblock wird verwendet, um die Abwärtskompatibilität mit klassischem ASP beizubehalten. Der Code im Block kann Programmieranweisungen ausführen und Funktionen in der aktuellen Seitenklasse während der Seitenrenderingphase aufrufen.

Im folgenden Beispiel wird eine ASP.NET Seite veranschaulicht, die Beispielcode für Microsoft Visual Basic .NET in einem eingebetteten Codeblock enthält, um die Ergebnisse einer Schleife anzuzeigen:

<%@ 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>

Da ein eingebetteter Codeblock immer mit der HTML-Quelle (HyperText Markup Language) gemischt wird, ist es für Entwickler schwierig, sie zu lesen und zu verwalten.

Weitere Informationen zu eingebetteten Codeblöcken auf ASP.NET Webseiten finden Sie unter Embedded Code Blocks in ASP.NET Web Forms Pages.

<%= ... %> anzeigeausdruck

Der <%= ... %> anzeigeausdruck ist ein Äquivalent des eingebetteten Codeblocks, der nur die Response.Write(...) Anweisung enthält. Es ist die einfachste Möglichkeit, Informationen wie eine einzelne Zeichenfolge, eine Int-Variable oder eine Konstante anzuzeigen.

Der folgende Beispielcode zeigt beispielsweise die aktuelle Uhrzeit an:

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

Denken Sie daran, dass der Anzeigeausdruck nicht in den Attributen von Serversteuerelementen verwendet werden kann. Der Grund dafür ist, dass .NET Framework den gesamten Ausdruck direkt kompiliert, anstatt den Inhalt als Wert für das Attribut anzuzeigen.

Weitere Informationen zum Anzeigen von Informationen aus ASP.NET finden Sie unter "Anzeigen von ASP.NET".

<%@ ... Ausdruck> der Direktive

Der Direktivenausdruck ist die Syntax, die Einstellungen angibt, die von der Seite und von Benutzersteuerungscompilern verwendet werden, wenn sie ASP.NET Webformularseiten (.aspx) und Benutzersteuerelementdateien (ASCX) verarbeiten.

Das ASP.NET Seitenframework unterstützt die folgenden Direktiven:

Anweisung Beschreibung
@ Page Definiert seitenspezifische Attribute, die vom ASP.NET Seitenparser und Compiler verwendet werden. Kann nur in .aspx Dateien enthalten sein.
Dieser Direktivename kann nur in ASP.NET Webformularseiten verwendet werden.
@ Control Definiert steuerelementspezifische Attribute, die vom ASP.NET Seitenparser und Compiler verwendet werden. Kann nur in ASCX-Dateien (Benutzersteuerelemente) enthalten sein.
Der Direktivenname kann nur in Benutzersteuerungsdateien verwendet werden.
@ Import Importiert explizit einen Namespace in eine Seite oder in ein Benutzersteuerelement.
@ Implements Gibt deklarativ an, dass eine Seite oder ein Benutzersteuerelement eine angegebene .NET Framework-Schnittstelle implementiert.
@ Register Ordnet Aliase Namespaces und Klassennamen zu. Dadurch können Benutzersteuerelemente und benutzerdefinierte Serversteuerelemente gerendert werden, wenn sie in einer angeforderten Seite oder einem Benutzersteuerelement enthalten sind.
@ Assembly Verknüpft eine Assembly während der Kompilierung mit der aktuellen Seite. Sie stellt alle Klassen und Schnittstellen der Assembly zur Verfügung, die auf der Seite verwendet werden können.
@ Master Identifiziert eine ASP.NET Gestaltungsvorlage.
@ WebHandler Identifiziert eine ASP.NET IHttpHandler-Seite.
@ PreviousPageType Bietet eine Möglichkeit, starke Eingaben für die vorherige Seite abzurufen, wie über die PreviousPage -Eigenschaft zugegriffen wird.
@ MasterType Weist der Master-Eigenschaft einer ASP.NET Seite einen Klassennamen zu. Bietet eine Möglichkeit, einen stark typierten Verweis auf die ASP.NET Gestaltungsvorlage zu erstellen.
@ OutputCache Steuert deklarativ die Ausgabezwischenspeicherungsrichtlinien einer Seite oder eines Benutzersteuerelements.
@ Reference Verknüpft deklarativ eine Seite oder ein Benutzersteuerelement mit der aktuellen Seite oder dem Benutzersteuerelement.

Weitere Informationen zur Direktivensyntax finden Sie unter "Syntax der Textvorlagendirektive".

<%# ... %> Datenbindungsausdruck

Der Datenbindungsausdruck erstellt eine Bindung zwischen einer Serversteuerelementeigenschaft und einer Datenquelle, wenn die DataBind-Methode dieses Serversteuerelements auf der Seite aufgerufen wird.

Das folgende Beispiel zeigt, wie Sie den Datenbindungsausdruck verwenden, um die Zeichenfolge von einer Funktion an die Text-Eigenschaft einer Bezeichnung zu binden:

<%@ 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>

Weitere Informationen zur Datenbindungsausdruckssyntax finden Sie unter Data-Binding Expression Syntax.

<%$ ... %> Ausdrucks-Generator

Der Ausdrucks-Generator wird verwendet, um Werte von Steuerelementeigenschaften basierend auf den Informationen festzulegen, die in den Konfigurations- oder Ressourcendateien einer Anwendung enthalten sind. Das folgende Beispiel ist die grundlegende Syntax des Ausdrucks-Generators:
<%$ Expression Prefix: Expression Value %>

Das Dollarzeichen ($) gibt an, ASP.NET, dass der folgende Ausdruck ein Ausdrucks-Generator ist. Das Ausdruckspräfix definiert die Art des Ausdrucks, z AppSettings. B. , , ConnectionStringsoder Resources. Darüber hinaus können Sie Ihren eigenen Ausdrucks-Generator erstellen und definieren. Der Ausdruckswert, der auf den Doppelpunkt folgt (:) ist, was ASP.NET tatsächlich als Wert einer bestimmten Eigenschaft verwendet.

Die folgende Demo zeigt, wie Sie mit dem Ausdrucks-Generator das Copyright einer Website aus dem Knoten in der AppSettings Datei "Web.config " abrufen und wie Sie die Copyrightinformationen als Wert der Texteigenschaft von Literal festlegen.

Der AppSettings Knoten in der Datei "Web.config ":

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

Der Ausdrucks-Generator auf der ASP.NET Webformularseite:

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

Weitere Informationen zu ASP.NET Ausdrücken finden Sie unter ASP.NET Expressions Overview.

<%-- ... -- %> serverseitiger Kommentarblock

Mit dem serverseitigen Kommentarblock können Entwickler Codekommentare an einer beliebigen Stelle der HTML-Quelle ASP.NET Webformularseiten (mit Ausnahme von <script> Codeblöcken) einbetten. Alle Inhalte zwischen dem öffnenden und schließenden Tags des serverseitigen Kommentarblocks werden nicht auf dem Server verarbeitet oder auf der resultierenden Seite gerendert.

Das folgende Codebeispiel zeigt, wie Sie den serverseitigen Kommentarblock auf einer ASP.NET Seite verwenden:

<%@ 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>

Weitere Informationen zu serverseitigen Kommentaren finden Sie unter Serverseitige Kommentare.