Ответ 1
Официальное название: разделители на стороне сервера "или" ASP.NET встроенные выражения ". Окно настроек подсветки синтаксиса Visual Studio 2008 вызывает эти" HTML-серверные стороны Script ". Ребята из Microsoft называет их" кодовыми самородками" в своих блогах.
-
<%@ %>
является директивой для веб-страниц ASP.NET. Используется для страниц и элементов управления для настройки параметров компилятора страницы/управления (<%@ Control Inherits="MyParentControl" %>
).-
<%@ %>
также является Директивой по приложениям. Используется для указания параметров приложения для global.asax. Отличается от директив страницы, поскольку он использует только другой набор тегов.
-
-
<% %>
является Code Render Block (для встроенного кода). Одна из четырех форм Встроенные блоки кода. Используется для включения серверного кода в методRender()
(<% x = x + 1; %>
) сгенерированного класса. Формат: однострочный или многострочный (например,if/then/else
с чередованием html), но не может использоваться для объявления функций. -
<%= %>
является Code Render Block (для встроенных выражений). Используется как сокращение для<%Response.Write(value)%>
-
<%: %>
(неофициально "Код кодирования HTML-кода ") аналогичен предыдущему, но вывод кодируется в формате HTML. -
<%# %>
представляет собой выражение привязки данных. Используется для односторонней (только для чтения) или двусторонней (обновляемой) привязки черезEval
,Xpath
,Bind
или выражения (например, выбранное значение выпадающего элемента управления). Привязывает выражения к связанным с данными свойствам управления через разметку атрибута управления или как отдельный тег, который генерирует экземплярDataBoundLiteralControl
со значением в свойствеText
. Выражения оцениваются обработчиком событийDataBinding
для элемента управления. -
<%#: %>
представляет собой выражение кодирования HTML-кодировки (новое в ASP.NET 4.5). Он объединяет функции<%# %>
и<%: %>
. -
<%$ %>
является ASP.NET Expression Builder. Используется для привязки выражения времени выполнения для свойств управления с помощью атрибутов тегов сервера. Используется сAppSettings
,ConnectionStrings
илиResources
(или собственное пользовательское расширение, например, для использования свойств кода). Эти назначения добавляются к методуOnInit()
сгенерированного класса. -
<%-- --%>
является Комментарий к серверу. Используется для исключения содержимого из компиляции (и, следовательно, будет генерировать ошибки, если элемент управления с комментариями упоминается в коде). В отличие от комментариев html содержимое не будет включено в вывод. -
<!-- #Include ... -->
представляет собой Директиву на стороне сервера. Используется для вставки содержимого файла в файл страницы, управления или глобального файла. Полезно, когда пользовательский контроль переполняется, и основная страница не может быть использована.
Существует также Блок декларации кода, окончательная форма блока встроенного кода.
<script runat="server">
bool IsTrue() {
return false;
}
</script>
Это используется для включения дополнительных членов (методов и т.д.) в класс, созданный с помощью разметки ASP.NET. Они всегда были предоставлены "прежде всего для сохранения обратной совместимости со старой ASP-технологией" и не рекомендуется использовать.