Блоки объявлений кода

Блоки объявлений кода определяют разделы серверного кода, которые внедряются в файлы приложения 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>

См. также

Основные понятия

Общие сведения о синтаксисе веб-страниц ASP.NET