ASP.NET Tutorial/ASP.Net Instroduction/Code behind

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

code-behind model allows for code separation of the page"s business logic from its presentation logic

   <source lang="csharp">

presentation logic for the page is stored in an .aspx page, whereas the logic piece is stored in a separate class file: .aspx.vb or .aspx.cs. File Options Using Code-Behind File Created Web Form .aspx file

                                             .aspx.vb or .aspx.cs file 

Master Page .master file

                                             .master.vb or .master.cs file 

Web User Control .ascx file

                                             .ascx.vb or .ascx.cs file 

Web Service .asmx file

                                             .asmx.vb or .asmx.cs file 

An .aspx page that uses the ASP.NET 2.0 code-behind model (VB version) <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb"

  Inherits="_Default" %>
   

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"

 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
   

<html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">

  <title>Simple Page</title>

</head> <body>

  <form runat="server">
     What is your name?
<asp:Textbox ID="Textbox1" Runat="server"></asp:Textbox>
<asp:Button ID="Button1" Runat="server" Text="Submit" OnClick="Button1_Click" /> <asp:Label ID="Label1" Runat="server"></asp:Label> </form>

</body> </html> A code-behind page (VB version) Partial Class _Default

  Inherits System.Web.UI.Page
   
  Protected Sub Button1_Click(ByVal sender As Object, _
     ByVal e As System.EventArgs) Handles Button1.Click
   
      Label1.Text = "Hello " & TextBox1.Text
  End Sub

End Class

An .aspx page that uses the ASP.NET 2.0 code-behind model (C# version)

<%@ Page Language="C#" CodeFile="Default.aspx.cs" Inherits="_aspx" %>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"

 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
   

<html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">

  <title>Simple Page</title>

</head> <body>

  <form runat="server">
     What is your name?
<asp:Textbox ID="Textbox1" Runat="server"></asp:Textbox>
<asp:Button ID="Button1" Runat="server" Text="Submit" OnClick="Button1_Click" /> <asp:Label ID="Label1" Runat="server"></asp:Label> </form>

</body> </html>

A code-behind page (C# version) using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page {

  protected void Button1_Click(object sender, EventArgs e)
  {
     Label1.Text = "Hello " + Textbox1.Text;
  }

}</source>


Code behind (VB.net)

   <source lang="csharp">

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="FirstPageCodeBehind" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server">

   <title>First Page Code-Behind</title>

</head> <body>

   <form id="form1" runat="server">
   <asp:Button
       id="Button1"
       Text="Click Here"
       Runat="server" />
   
   

<asp:Label id="Label1" Runat="server" />
   </form>

</body> </html>

File: Default.aspx.vb

Partial Class FirstPageCodeBehind

   Inherits System.Web.UI.Page
   Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
       Label1.Text = "Click the Button"
   End Sub
   Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
       Label1.Text = "Thanks!"
   End Sub

End Class</source>


code-inline model: all the code is contained within a single .aspx page

   <source lang="csharp">

File Options Using Inline Coding File Created Web Form .aspx file Master Page .master file Web User Control .ascx file Web Service .asmx file


File: Default.aspx (VB) <%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"

 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
   

<script runat="server">

  Protected Sub Button1_Click(ByVal sender As Object, _
     ByVal e As System.EventArgs)
   
     Label1.Text = "Hello " & Textbox1.Text
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">

  <title>Simple Page</title>

</head> <body>

  <form runat="server">
     What is your name?
<asp:Textbox ID="Textbox1" Runat="server"></asp:Textbox>
<asp:Button ID="Button1" Runat="server" Text="Submit" OnClick="Button1_Click" /> <asp:Label ID="Label1" Runat="server"></asp:Label> </form>

</body> </html>

File: Default.aspx (C#) <%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"

 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
   

<script runat="server">

  protected void Button1_Click(object sender, System.EventArgs e)
  {
     Label1.Text = "Hello " + Textbox1.Text;
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">

  <title>Simple Page</title>

</head> <body>

  <form runat="server">
     What is your name?
<asp:Textbox ID="Textbox1" Runat="server"></asp:Textbox>
<asp:Button ID="Button1" Runat="server" Text="Submit" OnClick="Button1_Click" /> <asp:Label ID="Label1" Runat="server"></asp:Label> </form>

</body> </html></source>


Use Code behind

   <source lang="csharp">

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="FirstPageCodeBehind" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server">

   <title>First Page Code-Behind</title>

</head> <body>

   <form id="form1" runat="server">
   <asp:Button
       id="Button1"
       Text="Click Here"
       OnClick="Button1_Click"
       Runat="server" />
   

<asp:Label id="Label1" Runat="server" />
   </form>

</body> </html>

File: Default.aspx.cs using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class FirstPageCodeBehind : System.Web.UI.Page {

   protected void Page_Load(object sender, EventArgs e)
   {
       Label1.Text = "Click the Button";
   }
   protected void Button1_Click(object sender, EventArgs e)
   {
       Label1.Text = "Thanks!";
   }

}</source>