asp.net - for - <%= jsp
<% $,<% @,<%=,<%#... ¿cuál es el problema? (2)
He programado tanto en ASP clásico como en ASP.NET, y veo diferentes etiquetas dentro del marcado para el código del lado del servidor.
Recientemente he encontrado un buen blog en MSDN que repasa la diferencia entre:
-
<%=
(porcentaje junto con signo igual) y -
<%#
(signo de porcentaje y hash / pound / octothorpe)
( <%#
se evalúa solo en databind, y <%=
se evalúa en render), pero también veo:
-
<%$
(porcentaje y signo de dólar) y -
<%@
(signo de porcentaje y en el símbolo).
Creo que <%@
carga cosas como ensamblajes y tal vez <%$
carga cosas desde archivos de configuración. No estoy muy seguro.
Me preguntaba si alguien podría aclararme todo esto y posiblemente explicar por qué es importante crear tantas etiquetas diferentes que aparentemente tengan un propósito similar.
Ha cubierto 2 de ellos (<% # se evalúa solo en databind, y <% = se evalúa en el render), y la respuesta para " <%@
" es que son las directivas del compilador (es decir, cosas como lo que '' d poner en la línea de comandos de un compilador).
No sé sobre " <%$
".
-
<% %>
- es para código en línea (especialmente flujo lógico) -
<%$ %>
- es para evaluar expresiones (como variables de recursos) -
<%@ %>
: es para directivas de página , registrar ensamblajes, importar espacios de nombres, etc. -
<%= %>
- es una mano corta paraResponse.Write
(discutido here ) -
<%# %>
- se usa para expresiones de enlace de datos . -
<%: %>
- es una mano corta para Response.Write(Server.HTMLEncode()) ASP.net 4.0+ -
<%#: %>
: se utiliza para expresiones de enlace de datos y se anula automáticamente como HTMLE. -
<%-- --%>
- es para comentarios del lado del servidor