<% $, <% @, <% =, <% #... в чем дело?
Я запрограммировал как в классическом ASP, так и в ASP.NET, и я вижу разные теги внутри разметки для кода на стороне сервера.
Недавно я наткнулся на хороший блог на MSDN, в котором рассказывается о разнице между:
<%=
(процент вместе со знаком равенства) и<%#
(знак процента и хэш / фунт / октоторп)
(<%#
оценивается только при привязке данных, и <%=
оценивается при рендере), но я также вижу:
<%$
(знак процента и доллара) и<%@
(знак процента и символ).
я верю <%@
загружает такие вещи, как сборки и, возможно, <%$
загружает вещи из конфигурационных файлов? Я не слишком уверен.
Мне просто интересно, может ли кто-нибудь объяснить мне все это и, возможно, объяснить, почему так важно создавать так много разных тегов, которые, казалось бы, имеют схожую цель?
2 ответа
<% %>
- для встроенного кода (особенно логического потока)<%$ %>
- для оценки выражений (например, переменных ресурсов)<%@ %>
- для директив страницы, регистрации сборок, импорта пространств имен и т. д.<%= %>
- это сокращение отResponse.Write
(обсуждается здесь)<%# %>
- используется для выражения привязки данных.<%: %>
- сокращение от Response.Write (Server.HTMLEncode ()) ASP.net 4.0+<%#: %>
- используется для выражений привязки данных и автоматически кодируется HTMLE.<%-- --%>
- для комментариев на стороне сервера
Вы рассмотрели 2 из них (<% # оценивается только при привязке данных, а <% = оценивается при рендеринге) и ответ на вопрос " <%@
msgs tr "это то, что это директивы компилятора (то есть, что-то вроде того, что вы положили бы в командную строку компилятора).
Я не знаю о<%$
".