程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> asp.net 代碼隱藏的編碼模型

asp.net 代碼隱藏的編碼模型

編輯:ASP.NET基礎

一.內聯代碼與代碼隱藏
代碼隱藏模型相對內聯代碼的優勢:

1.邏輯代碼和html的分離,使得我們可以更專注於業務邏輯的處理。
2.使業務邏輯更加清晰。
3.可以將後置代碼編譯成dll,使得程序更加安全。

二.後置代碼與頁面的關系和機制
與代碼後置模型相關的三個類。

1.基頁面類 page類

.net類庫中的page類,page類定義了頁面的基本功能。例如:允許存放其他控件、呈現html、提供對asp.net對象的訪問(如request、response、session等)。

2.代碼後置類
在編譯的時候,asp.net利用了分部類的神奇功能把一些額外的代碼附加到代碼後置類中。

在附加的這部分代碼中,把頁面上所有控件定義成protected類型的變量,從而使得可以在代碼後置類中能夠訪問這些控件。

3.頁面類

asp.net編譯器在編譯的時候會創建另一個類代表實際的aspx頁面,這個類繼承自代碼隱藏類。
這個類中包含了初始化控件和呈現html的代碼。當接受到這個頁面請求時,asp.net實例化這個類。
這三各類的關系如下圖:


三.代碼隱藏文件與頁面的連接
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
代碼隱藏文件與頁面的連接非常簡單,在aspx頁面頂端的這樣一句話就完成了他們之間的連接。
codeFile指定了後置代碼的文件,Inherits指定了已經編譯的後置代碼的類名。

四.控件與頁面變量的連接

了解後置代碼類和頁面類的關系以後,控件如何和頁面變量連接的理解就簡單多了。
比如:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
asp.net編譯器都會附件如下的變量聲明到你的代碼後置類中,當然這些聲明是不可見的:

protected System.Web.UI.TextBox TextBox1;
這樣就能夠在後置代碼類中訪問頁面控件標簽了。
五.事件與事件處理程序的連接
.net當中事件機制是一種非常重要的機制,這一部分放到後面慢慢弄清楚。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved