2010-10-20 8 views
16

Il semble que quelque chose me manque. Mais depuis que .Net 4.0 est sorti, j'ai vu la référence à la syntaxe <%: %> pour ASP.NET. Il semble que ce soit similaire à <%= %> mais il y a clairement une raison à la nouvelle syntaxe. J'ai essayé google mais la recherche <%: %> ne semble pas retourner quoi que ce soit. Que fait la syntaxe <%: %>? A-t-il été introduit dans .Net 4.0 ou 3.5? Quelqu'un peut-il m'éclairer?ASP.NET <%= %> vs <%: %>

Modifié: S'il vous plaît fournir des références ou des exemples

+1

Html code automatiquement la sortie. C'est nouveau en 4. Je suis sûr que vous obtiendrez plus d'informations de quelqu'un dans une réponse si. – jjnguy

Répondre

21

Je crois que le <%:%> est HtmlEncoding auto

ce poste de Scott Gu aider à expliquer - il a été introduit en .net 4 et MVC2

http://weblogs.asp.net/scottgu/archive/2010/04/06/new-lt-gt-syntax-for-html-encoding-output-in-asp-net-4-and-asp-net-mvc-2.aspx

+0

Ceci est correct, <%: %> est à peu près équivalent à faire <% = Html.Encode (...)%> – ridecar2

+0

c'est aussi équivalent à faire <% = Server.HtmlEncode()%> – stack72

+0

et ce qui est <% #:? – MonsterMMORPG

4

:-t le codage HTML.

Scott Guthrie décrit a nice post en détail.

Ne l'utilisez pas là où il est déjà encodé sinon il le doublera. Ceci est utile si vous voulez sortir des choses comme le HTML, cependant.