다음을 통해 공유


코드 선언 블록

코드 선언 블록은 ASP.NET 응용 프로그램 파일에서 runat="server" 특성으로 표시된 <script> 블록 내에 포함되는 서버 코드 섹션을 정의합니다.

<script runat="server" language="codelanguage" Src="pathname">
   Code goes here.
</script>

특성

  • language
    코드 선언 블록에 사용할 언어를 지정합니다. 이 값은 VB(Visual Basic), C# 또는 JScript .NET과 같이 .NET Framework와 호환되는 모든 언어를 나타낼 수 있습니다. 언어가 지정되지 않으면 이 값은 기본적으로 @ Page 또는 @ Control 지시문에 설정된 값으로 지정됩니다. 이 지시문에도 언어가 지정되지 않으면 응용 프로그램의 Web.config 파일에서 기본값을 변경하지 않은 경우 VB가 기본값으로 사용됩니다.

    참고참고

    ASP.NET 페이지나 사용자 정의 컨트롤에서는 단 하나의 언어만 사용할 수 있습니다.필요에 따라 코드 선언 블록의 여는 태그와 @ Page 또는 @ Control 지시문 같은 여러 위치에서 언어를 지정할 경우에는 언어가 모두 일치해야 합니다.

  • runat
    값이 runat="server"인 경우 이 특성은 script 블록에 포함된 코드가 클라이언트가 아니라 서버에서 실행됨을 지정합니다. 이 특성은 서버측 코드 블록에 필요합니다.

  • src
    로드할 외부 스크립트 파일의 경로와 이름을 지정합니다. 이 특성을 사용하면 선언 블록의 다른 모든 코드가 무시됩니다.

설명

코드 선언 블록은 값이 server로 설정된 runat 특성을 포함하는 <script> 태그를 사용하여 정의됩니다. 필요에 따라 <script> 요소에 language 특성을 사용하여 내부 코드의 언어를 지정할 수도 있습니다. 언어가 지정되어 있지 않은 경우 ASP.NET에서는 기본 페이지 또는 사용자 정의 컨트롤(@ Page@ Control 지시문을 사용하여 제어됨)에 대해 구성된 언어가 기본값으로 지정됩니다. 이러한 서버측 코드 블록은 웹 페이지, 사용자 정의 컨트롤, 마스터 페이지, Global.asax 파일 등을 포함하여 다양한 ASP.NET 응용 프로그램 파일 내에서 선언될 수 있습니다. 제공된 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 웹 페이지 구문 개요