Wie lautet der offizielle Name für die "speziellen" ASP.NET-Tags wie folgt:
<%# %>
<%= %>
<%@ %>
<%$ %>
Ich kann den konzeptionellen oder bekannten Namen für diese nicht herausfinden, daher habe ich Probleme, nach weiteren Informationen zu suchen. Kann mir jemand als Bonus einen kurzen Überblick über alle möglichen "speziellen Tags" geben und darüber, was jeder von ihnen tut (oder mich auf eine Ressource verweisen)?
Antworten:
Der offizielle Name lautet " serverseitige Skripttrennzeichen " oder " ASP.NET-Inline-Ausdrücke ". Das Dialogfeld zur Hervorhebung der Syntax-Hervorhebungseinstellungen in Visual Studio 2008 ruft diese "HTML Server-Side Script" auf. Microsoft-Leute nennen sie in ihren Blogs "Code-Nuggets".
<%@ %>
ist eine Richtlinie für ASP.NET-Webseiten . Wird für Seiten und Steuerelemente zum Konfigurieren der Einstellungen des Seiten- / Steuerungs-Compilers verwendet (<%@ Control Inherits="MyParentControl" %>
).<%@ %>
ist auch eine Anwendungsrichtlinie . Wird verwendet, um anwendungsspezifische Einstellungen für global.asax festzulegen. Unterscheidet sich von den Seitenanweisungen, da nur ein anderer Tag-Satz verwendet wird.<% %>
ist ein Code-Renderblock (für Inline-Code) . Eine von 4 Formen eingebetteter Codeblöcke . Wird zum Einfügen von serverseitigem Code in dieRender()
Methode (<% x = x + 1; %>
) der generierten Klasse verwendet. Format: einfach / mehrzeilig oder mehrfach verknüpft (z. B.if/then/else
mit HTML durchsetzt), kann jedoch nicht zum Deklarieren von Funktionen verwendet werden.<%= %>
ist ein Code-Renderblock (für Inline-Ausdrücke) . Wird als Abkürzung für verwendet<%Response.Write(value)%>
<%: %>
(inoffiziell ein " HTML-Codierungscodeblock ") ist derselbe wie zuvor, aber die Ausgabe ist HTML-codiert.<%# %>
ist ein datenbindender Ausdruck . Wurde für den Einweg (Read - only) oder Zwei-Wege (aktualisierbar) -Bindung durchEval
,Xpath
,Bind
, oder Ausdrücke (zB des ausgewählten Wert einer Dropdown-Kontrolle). Bindet Ausdrücke an datengebundene Steuerelementeigenschaften über das Attribut-Markup des Steuerelements oder als separates Tag, das eineDataBoundLiteralControl
Instanz mit dem Wert in seinerText
Eigenschaft generiert . Ausdrücke werden von einemDataBinding
Ereignishandler für das Steuerelement ausgewertet .<%#: %>
ist ein HTML-codierter Datenbindungsausdruck (neu in ASP.NET 4.5). Es kombiniert die Funktionalität von<%# %>
und<%: %>
.<%$ %>
ist ein ASP.NET Expression Builder . Wird für die Laufzeitausdrucksbindung für Steuerelementeigenschaften über die Server-Tag-Attribute verwendet. Wird mitAppSettings
,ConnectionStrings
oderResources
(oder Ihrer eigenen benutzerdefinierten Erweiterung verwendet , um beispielsweise CodeBehind-Eigenschaften zu verwenden). Diese Zuweisungen werden derOnInit()
Methode der generierten Klasse hinzugefügt .<%-- --%>
ist ein serverseitiger Kommentar . Wird verwendet, um den Inhalt von der Kompilierung auszuschließen (und generiert so Fehler, wenn in CodeBehind auf ein auskommentiertes Steuerelement verwiesen wird). Im Gegensatz zu HTML-Kommentaren wird der Inhalt nicht in die Ausgabe aufgenommen.<!-- #Include ... -->
ist eine serverseitige Include-Richtlinie . Wird verwendet, um den Inhalt einer Datei in die Seite, das Steuerelement oder die globale Datei einzufügen. Nützlich, wenn ein Benutzersteuerelement zu viel ist und eine Masterseite nicht verwendet werden kann.Es gibt auch einen Code Declaration Block , das endgültige Embedded Code Block-Formular.
Dies wird verwendet, um der aus dem ASP.NET-Markup generierten Klasse zusätzliche Mitglieder (Methoden usw.) hinzuzufügen. Diese wurden bisher nur "hauptsächlich zur Wahrung der Abwärtskompatibilität mit älteren ASP-Technologien" bereitgestellt und werden für die Verwendung nicht empfohlen.
quelle
Keine Antwort auf Ihre Namensfrage, aber die MSDN-Seite "ASP.NET-Seitensyntax" ist ziemlich gut (oder besser gesagt, das ist die Seite der obersten Ebene; die Seiten darunter enthalten weitere Informationen).
EDIT: Ich hatte vorher gedacht, dass dies
<%# ... %>
nicht in der Liste enthalten ist, aber natürlich unter datenbindenden Ausdrücken. Doh.quelle
Ich habe diese QuickStart-Seite immer als sehr nützlich empfunden, wenn ich Zweifel an der serverseitigen Syntax habe. Es enthält 8 verschiedene Markup-Stile und illustrative Beispiele für jeden einzelnen sowie Erläuterungen zu den Vor- und Nachteilen.
Die Direktive auf Seitenebene, die IIRC an anderer Stelle im Schnellstart ausführlich beschreibt, wird jedoch nicht erwähnt.
Dies ist natürlich für ASP.NET 2.0 relevant.
quelle
Microsoft-Leute nennen sie manchmal "Nuggets" oder "Code-Nuggets".
quelle
Ich habe auch diese sogenannten "V-Stiche" gehört, einschließlich im StackOverflow-Podcast.
quelle