深入講解控件的屬性持久化(一)
自從寫了控件開發的文章後,收到了不少朋友的來信,提出了不少的問題,感謝大家的關注。今天就 把大家說的一些問題來講解下。
雖然我這個系列是控件開發,但是我的目的還是希望大家通過開發控件更加快速的對ASP.NET有更加深 入的了解,所以我們也很有必要把一些基礎性的東西將清楚。
為了達到深入講解屬性的目的,我首先來講講頁面周期和頁面解析的一些問題:
1。頁面的解析:
大家可能聽說,頁面在提交給服務器的時候,都是被解析成為了一個個的繼承與Page的類,最直接的 證明就是:
Code <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
大家看看,就是那個代碼隱藏
Code
CodeFile="Default.aspx.cs" Inherits="_Default"
大家也許覺得疑惑:一個aspx的頁面都是一些標記語言啊,如下面:(注意:是將下面的文本解析為 一個類)
Code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!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 runat="server">
<title>無標題頁 </title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="提交" OnClick="Button1_Click" /></div>
<asp:LinkButton ID="LinkButton1" runat="server">LinkButton</asp:LinkButton>
</form>
</body>
</html>
大家也許看見了,上面的源是一個類似與XML的文檔。