Блоки объявлений кода
Обновлен: Ноябрь 2007
Блоки объявлений кода определяют разделы серверного кода, которые внедряются в файлы приложения ASP.NET в блоках <script>, отмеченных атрибутом runat="server".
<script runat="server" language="codelanguage" Src="pathname">
Code goes here. </script>
Атрибуты
language
Задает язык, используемый в блоке объявлений кода. Это значение может быть любым поддерживаемым а .NET Framework языком, например, Visual Basic (VB), C# или JScript .NET. Если язык не указан, то значением по умолчанию считается значение, указанное в директиве @ Page или @ Control. Если язык не указан и в этих директивах, то по умолчанию устанавливается значение VB, если оно не было изменено в файле приложения Web.config.Примечание. На странице ASP.NET или в пользовательском элементе управления может использоваться только один язык. Если язык указывается в нескольких местах (это необязательно), например в открывающем теге блока объявлений кода и в директивах @ Page и @ Control, то указываемые значения должны совпадать.
runat
Если установлено значение runat="server", данный атрибут указывает, что код, содержащийся в блоке script, выполняется на стороне сервера, а не клиента. Этот атрибут необходим для блоков кода на стороне сервера.src
Задает имя внешнего файла сценария для загрузки и путь к нему. При установке этого атрибута любой другой код в блоке объявлений не обрабатывается.
Заметки
Блоки объявлений кода определяются с помощью тегов <script>, содержащих атрибут runat со значением server. Элемент <script> может содержать необязательный атрибут language для указания языка внутреннего кода. Если язык не указан, то языком по умолчанию в ASP.NET считается язык, указанный в настройках базовой страницы или пользовательского элемента управления (с помощью директив @ Page и @ Control). Эти блоки кода на стороне сервера могут объявляться в разных файлах приложений ASP.NET, включая веб-страницы, пользовательские элементы управления, главные страницы и файлы Global.asax. При компиляции файла данного приложения ASP.NET встроенный блок кода компилируется с определенным объектом, связанным с данным типом файлов ASP.NET. Например, при компиляции страницы любые внедренные блоки объявлений кода компилируются с классом Page в один объект на странице на сервере.
Элемент <script> также можно использовать для задания внешнего файла сценария с помощью атрибута src. При задании атрибута src все содержимое элемента <script>, находящееся между открывающим и закрывающим тегами, не обрабатывается. В этом случае в конце открывающего тега следует использовать косую черту (/). Например, <script runat="server" src="myFile.cs" />.
Пример
В следующем примере кода демонстрируется способ определения действий обработки события для события EnterBtn_Click.
Примечание о безопасности. |
---|
В данном примере имеется текстовое поле, куда вводятся пользовательские данные, которые представляют потенциальную угрозу безопасности. По умолчанию на веб-страницах ASP.NET выполняется проверка вводимых пользователем данных на наличие сценариев и элементов HTML. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев. |
<html>
<script language="C#" runat="server">
void EnterBtn_Click(Object Src, EventArgs E) {
Message.Text = "Hi " + Name.Text + ", welcome to ASP.NET!";
}
</script>
<body>
<form runat="server">
Enter your name: <asp:textbox id="Name" runat=server/>
<asp:button text="Enter" Onclick="EnterBtn_Click" runat="server"/>
<p>
<asp:label id="Message" runat=server/>
</form>
</body>
</html>
<html>
<script language="VB" runat="server">
Sub EnterBtn_Click(Src As Object, e As EventArgs)
Message.Text = "Hi " & Name.Text & ", welcome to ASP.NET!"
End Sub
</script>
<body>
<form runat="server">
Enter your name: <asp:textbox id="Name" runat=server/>
<asp:button text="Enter" Onclick="EnterBtn_Click"
runat="server"/>
<p>
<asp:label id="Message" runat=server/>
</form>
</body>
</html>