您目前已離線,請等候您的網際網路重新連線

資訊: ASP.NET 程式碼後置模型概觀

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:303247
這份文件參照到下列的 Microsoft.NET Framework 類別庫的命名空間:
  • System.Web.UI
結論
本文提供在 ASP.NET 中介紹的 [程式碼後置] 模型的簡要概觀。
其他相關資訊
ASP.NET 支援兩種方法可以作者網頁:
  • 內嵌程式碼
  • 程式碼後置

內嵌程式碼

行中的程式碼是直接在 ASP.NET 中內嵌的程式碼頁。下列程式碼都代表範例 ASP.NET 網頁包含內嵌的程式碼:

Myinlinecode.aspx
<%@ Language=C# %><HTML>   <script runat="server" language="C#">   void MyButton_OnClick(Object sender, EventArgs e)   {      MyLabel.Text = MyTextbox.Text.ToString();   }   </script>   <body>      <form id="MyForm" runat="server">         <asp:textbox id="MyTextbox" text="Hello World" runat="server"></asp:textbox>         <asp:button id="MyButton" text="Echo Input" OnClick="MyButton_OnClick" runat="server"></asp:button>         <asp:label id="MyLabel" runat="server"></asp:label>      </form>   </body></HTML>				

程式碼落後

程式碼後置 (Code-Behind 指的是您的 ASP.NET 網頁內個別的類別檔案所包含的程式碼。這可讓從展示邏輯乾淨分隔您的 HTML。下列範例說明 ASP.NET 程式碼後置網頁:

MyCodebehind.aspx
<%@ Language="C#" Inherits="MyStuff.MyClass" %><HTML>    <body>        <form id="MyForm" runat="server">        <asp:textbox id="MyTextBox" text="Hello World" runat="server"></asp:textbox>        <asp:button id="MyButton" text="Echo Input" Onclick="MyButton_Click" runat="server"></asp:button>        <asp:label id="MyLabel" runat="server" />        </form>    </body></HTML>				
Mycodebehind.cs
using System;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace MyStuff{    public class MyClass : Page    {        protected System.Web.UI.WebControls.Label MyLabel;        protected System.Web.UI.WebControls.Button MyButton;        protected System.Web.UI.WebControls.TextBox MyTextBox;        public void MyButton_Click(Object sender, EventArgs e)        {            MyLabel.Text = MyTextBox.Text.ToString();        }    }}				
前述範例中您可以使用下列語法來編譯 Mycodebehind.cs:
csc.exe /out:mycodebehind.dll /t:library mycodebehind.cs
當您使用 [下列程式碼的程式碼後置頁面會從 頁面 類別繼承。Page 類別位於 System.Web.UI 命名空間:
public class MyClass : Page				
網頁 繼承類別讓程式碼後置頁面存取 ASP.NET 內建物件例如 要求回應。對於處理 ASP.NET 頁面中的控制項的事件,從 Page 類別繼承提供在另外一個架構。

在上述範例中之前執行 ASP.NET 編譯程式碼後置頁面。或者,您可以參考程式碼後置類別,藉由使用 SRC 標記,如下所示:
<%@ Language="C#" Inherits="MyStuff.MyClass" src="MyCodebehind.cs" %>				
ASP.NET 在這種情況下編譯程式碼後置頁面即時。請注意這個編譯步驟只發生於更新 (這偵測到透過時間戳記變更) 程式碼後置檔案。

在 Visual Studio.NET 中的程式碼後置 (Code-Behind 支援

使用 Microsoft Visual Studio.NET 建立 ASP.NET Web Form 時程式碼後置頁面會是預設方法。會在另外 Visual Studio.NET 自動先行編譯為您執行當您建置您的方案。 請注意在 Visual Studio.NET 中建立的程式碼後置網頁加上特殊網頁屬性,程式碼後置,Visual Studio.NET 使用。
参考
如需 %1 的詳細資訊,按一下面的文件編號 %2 下面,檢視 「 Microsoft 知識庫 」 中的文件 %2 件:
313105注意: 不能編譯使用 UNC 共用的 src 屬性的程式碼後置檔案
程式碼後置

警告:本文為自動翻譯

內容

文章識別碼:303247 - 最後檢閱時間:02/23/2007 05:28:23 - 修訂: 3.4

Microsoft ASP.NET 1.1, Microsoft ASP.NET 1.0

  • kbmt kbinfo kbwebforms KB303247 KbMtzh
意見反應