Quel est le nom officiel des balises ASP.NET "spéciales" comme ceci:
<%# %>
<%= %>
<%@ %>
<%$ %>
Je n'arrive pas à comprendre le nom conceptuel ou bien connu de ceux-ci, j'ai donc du mal à rechercher plus d'informations. En prime, quelqu'un peut-il me donner un aperçu rapide de tous les "tags spéciaux" possibles et ce que chacun d'eux fait (ou me diriger vers une ressource)?
Réponses:
Le nom officiel est " délimiteurs de script côté serveur " ou " expressions en ligne ASP.NET ". La boîte de dialogue de mise en évidence de la syntaxe de Visual Studio 2008 appelle ces «scripts côté serveur HTML». Les gars de Microsoft les appellent des "pépites de code" dans leurs blogs.
<%@ %>
est une directive pour les pages Web ASP.NET . Utilisé pour les pages et les contrôles pour configurer les paramètres du compilateur de pages / contrôles (<%@ Control Inherits="MyParentControl" %>
).<%@ %>
est également une directive d'application . Utilisé pour spécifier les paramètres spécifiques à l'application pour global.asax. Différent des directives de page car il utilise uniquement un ensemble de balises différent.<% %>
est un bloc de rendu de code (pour le code en ligne) . L'une des 4 formes de blocs de code intégrés . Utilisé pour inclure du code côté serveur dans laRender()
méthode (<% x = x + 1; %>
) de la classe générée. Format: simple / multiligne ou à liens multiples (par exempleif/then/else
entrecoupé de html) mais ne peut pas être utilisé pour déclarer des fonctions.<%= %>
est un bloc de rendu de code (pour les expressions en ligne) . Utilisé comme raccourci pour<%Response.Write(value)%>
<%: %>
(officieusement un " bloc de code de codage HTML ") est le même que le précédent, mais la sortie est codée en HTML.<%# %>
est une expression de liaison de données . Utilisé pour une voie (lecture seule) ou à deux voies (actualisable) à travers la liaisonEval
,Xpath
,Bind
, ou des expressions (par exemple , la valeur sélectionnée d'un contrôle déroulant). Lie les expressions aux propriétés de contrôle liées aux données via le balisage d'attribut du contrôle, ou en tant que balise distincte qui génère uneDataBoundLiteralControl
instance avec la valeur sur saText
propriété. Les expressions sont évaluées par unDataBinding
gestionnaire d'événements pour le contrôle.<%#: %>
est une expression de liaison de données codée HTML (nouvelle dans ASP.NET 4.5). Il combine les fonctionnalités de<%# %>
et<%: %>
.<%$ %>
est un générateur d'expressions ASP.NET . Utilisé pour la liaison d'expression d'exécution pour les propriétés de contrôle via les attributs de balise de serveur. Utilisé avecAppSettings
,ConnectionStrings
ouResources
(ou votre propre extension personnalisée , par exemple pour utiliser le code-behind propriétés). Ces affectations sont ajoutées à laOnInit()
méthode de la classe générée.<%-- --%>
est un commentaire côté serveur . Utilisé pour exclure le contenu de la compilation (et générera donc des erreurs si un contrôle mis en commentaire est mentionné dans le code-behind). Contrairement aux commentaires html, le contenu ne sera pas inclus dans la sortie.<!-- #Include ... -->
est une directive d'inclusion côté serveur . Utilisé pour insérer le contenu d'un fichier dans la page, le contrôle ou le fichier global. Utile lorsqu'un contrôle utilisateur est excessif et qu'une page maître ne peut pas être utilisée.Il existe également un bloc de déclaration de code , le formulaire final de bloc de code intégré.
Ceci est utilisé pour inclure des membres supplémentaires (méthodes, etc.) à la classe générée à partir du balisage ASP.NET. Ceux-ci n'ont été fournis que "principalement pour préserver la compatibilité descendante avec les anciennes technologies ASP" et leur utilisation n'est pas recommandée.
la source
Pas de réponse à votre question de nom, mais la page MSDN "ASP.NET Page Syntax" est assez bonne (ou plutôt, c'est la page de niveau supérieur; les pages en dessous donnent plus d'informations).
EDIT: J'avais déjà pensé que cela
<%# ... %>
n'était pas inclus dans la liste, mais bien sûr, c'est sous les expressions de liaison de données. Doh.la source
J'ai toujours trouvé cette page de démarrage rapide très utile, chaque fois que j'ai un doute sur la syntaxe côté serveur. Il détaille 8 styles de balisage différents et fournit des exemples illustratifs de chacun, en plus d'expliquer les avantages et les inconvénients.
Il ne mentionne cependant pas la directive au niveau de la page, que l'IIRC est détaillée ailleurs dans le Quickstart.
Bien sûr, cela concerne ASP.NET 2.0.
la source
Les gars de Microsoft les appellent parfois "pépites" ou "pépites de code".
la source
J'ai également entendu ces dénommés "piqûres en V", y compris sur le podcast StackOverflow.
la source