Офіційна назва - " обмежувачі сценаріїв на стороні сервера " або " вбудовані вирази ASP.NET ". Діалогове вікно налаштування синтаксису Visual Studio 2008 називає цей "скрипт на стороні сервера HTML". Хлопці Microsoft називають їх у своїх блогах «кодовими самородками».
<%@ %>
є Директива для ASP.NET веб - сторінок . Використовується для сторінок і елементів керування для налаштування параметрів компілятора сторінки / управління ( <%@ Control Inherits="MyParentControl" %>
).
<%@ %>
також є Директивою щодо застосування . Використовується для визначення параметрів програми для global.asax. Відрізнити від директив сторінки, оскільки він використовує лише інший набір тегів.
<% %>
це блок візуалізації коду (для вбудованого коду) . Одна з 4 форм блоків з вбудованими кодами . Використовується для включення коду на стороні сервера до Render()
методу ( <% x = x + 1; %>
) згенерованого класу. Формат: одинарний / багаторядковий або багатозв'язаний (наприклад, if/then/else
перемежований з html), але не може використовуватися для оголошення функцій.
<%= %>
це блок візуалізації коду (для вбудованих виразів) . Використовується як скорочення для<%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" і не рекомендуються для використання.