<% $, <% @, <% =, <% # ... qual é o problema?
-
12-09-2019 - |
Pergunta
Eu tenho programado em ambos ASP clássico e ASP.NET, e vejo marcas diferentes dentro da marcação de código do lado do servidor.
Eu vim recentemente através de um bom blog no MSDN que vai sobre a diferença entre:
-
<%=
(percentagem juntamente com sinal de igual) e -
<%#
(sinal de porcentagem e haxixe / libra / octothorpe)
(<%#
é avaliado apenas com databind e <%=
é avaliada em rendem), mas também vejo:
-
<%$
(cento e do dólar) e -
<%@
(sinal de porcentagem e em símbolo).
Eu acredito que carrega <%@
coisas como montagens e cargas talvez <%$
coisas de arquivos de configuração? Eu não estou muito certo.
Eu só estava me perguntando se alguém poderia esclarecer tudo isso para mim e, possivelmente, explicar por que é importante para criar tantas marcas diferentes que aparentemente têm uma finalidade semelhante?
Solução
-
<% %>
- é para código embutido (especialmente fluxo lógico) -
<%$ %>
- é para avaliar expressões (como variáveis ??de recursos) -
<%@ %>
- é para Página directivas , montagens registrando, namespaces importadores, etc. -
<%= %>
- é de curto mão paraResponse.Write
(discutido aqui ) -
<%# %>
-. É usado para ligação de dados expressões -
<%: %>
- é de curto mão para Response.Write (Server.HTMLEncode ()) ASP.net 4.0 + -
<%#: %>
-. É usado para ligação de dados expressões e é automaticamente HTMLEncoded -
<%-- --%>
- é para comentários do lado do servidor
Outras dicas
Você cobriu 2 deles (<% # é avaliado apenas com databind, e <% = é avaliada em rendem), ea resposta para "<%@
" é que as directivas de compilador de TI (ie., Coisas como o que você 'd colocar na linha de comando do compilador).
Eu não sei sobre "<%$
".