225 votes

« Spéciales » balises ASP.NET

Quel est le nom officiel pour le « spécial » ASP.NET balises comme ceci :

Je n’arrive pas à comprendre le nom conceptuel ou bien connu pour ces derniers, donc je ne parviens pas à la recherche pour plus d’informations. En bonus, peut quelqu'un me donner un rapide aperçu de tous les possibles « balises spéciales » et en quoi chacun d’eux (ou m’orienter vers une ressource) ?

341voto

ssg Points 20321

Le nom officiel est "script côté serveur délimiteurs" ou "ASP.NET expressions inline". Visual Studio 2008 de la syntaxe boîte de dialogue paramètres des appels de ces "HTML Script Côté Serveur". Microsoft gars appellent "le code pépites" dans leurs blogs.

  • <%@ %> est utilisé pour la page niveau directives. (<%@ Control Inherits="MyParentControl" %>)
  • <% %> est pour l'inclusion de code côté serveur pour l' Render() méthode (<% x = x + 1; %>) de la classe générée
  • <%= %> est équivalent à Response.Write(); appel dans l' Render() méthode
  • <%: %> est le même que précédemment, mais la sortie est HTML codé (voir ci-dessous)
  • <%# %> est utilisé pour les expressions de liaison de données. Les expressions de liaison de données peut être utilisé dans les attributs de balises de serveur pour attribuer des valeurs calculées pour les propriétés. Ils peuvent aussi être utilisés comme distincte de la balise. Dans ce cas, un DataBoundLiteralControl instance est automatiquement généré pour l'expression d'attribuer une valeur à son Text de la propriété. Ces expressions sont évaluées et les missions sont exécutées lorsque l' DataBinding événement est déclenché pour le contrôle qui contient expression de liaison de données, parce que pour chaque tel contrôle, d'un gestionnaire d'événement est généré de ces expressions.
  • <%#: %> Est de nouveau dans ASP.NET 4.5, et est codé en HTML databind. Il combine les fonctionnalités d' <%# %> et <%: %>.
  • <%$ %> est utilisé pour l'expression personnalisée de liaison. E. g. pour localiser les ressources de chaîne. Peut seulement être utilisé dans les attributs de balises de serveur pour attribuer des valeurs calculées pour les propriétés. Ces missions sont ajoutés à l' OnInit() méthode de la classe générée. Voir http://msdn.microsoft.com/en-us/library/d5bd1tad.aspx
  • <%-- --%> est utilisé pour le serveur-côté des commentaires.

Il y a aussi

<script runat="server">
</script>

qui est utilisé pour inclure d'autres membres (méthodes, etc.) pour la classe générée de la ASP.NET balisage.

7voto

Jon Skeet Points 692016

Aucune réponse à votre question sur le nom, mais la page "ASP.NET Page Syntax" de MSDN est assez bonne (ou plutôt, c'est la page de niveau supérieur, les pages qui s'y trouvent donnent plus d'informations).

EDIT: J'avais déjà pensé que <%# ... %> n'était pas inclus dans la liste, mais bien sûr, sous Data-Binding Expressions. Doh.

6voto

Cerebrus Points 18045

J'ai toujours trouvé cette page QuickStart 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 niveau page, laquelle IIRC est détaillée ailleurs dans le Quickstart.

Bien sûr, ceci est pertinent pour ASP.NET 2.0.

6voto

Matth Points 49

Les gars de Microsoft les appellent parfois «pépites» ou «pépites de code».

0voto

Chris Moschini Points 7278

J'ai aussi entendu ces appelés "V stings", y compris sur le Podcast StackOverflow.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X