您好,登錄后才能下訂單哦!
這篇文章給大家介紹如何分析ASP.NET Postback的Web Page生命周期,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
說道ASP.NET Postback,就得說Web Page生命周期,但是Web Page生命周期卻不是三言兩語就能夠說得清楚的,所以在這里單純站的編程的角度,撇開Web Page生命周期淺談Postback。
我們知道,無論是ASP.NET1.x,2.0,甚至是以后的版本,ASP.NET最終Render到Client端通過瀏覽器瀏覽的都是一樣:一個單純的HTML。Client通過Submit Form的方式將填入Form的數據提交給Server進行處理。我們現在來看看ASP.NET Postback程序處理的過程。
首先我們通過一個Sample來看ASP.NET如何處理一個通過Click一個Button引起的Postback。下面是Web Page的HTML:
<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Default.
aspx.cs"Inherits="_Default"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlnshtmlxmlns="http://www.w3.org/1999/xhtml">
<headrunatheadrunat="server">
<title>TestPage</title>
</head>
<body>
<formidformid="form1"runat="server">
<div>
<asp:Labelrunatasp:Labelrunat="server"ID="LabelMessage"ForeColor="red"></asp:Label>
</div>
<div>
<asp:Buttonrunatasp:Buttonrunat="server"ID="Button1"Text="Button1"OnClick=
"Button1_Click"OnCommand="Button_Command"CommandArgument="Button1"/><asp:Buttonrunatasp:Buttonrunat="server"ID="Button2"Text="Button2"OnClick=
"Button2_Click"OnCommand="Button_Command"CommandArgument="Button2"UseSubmitBehavior="false"/><asp:Buttonrunatasp:Buttonrunat="server"ID="Button3"Text="Button3"OnClick=
"Button3_Click"OnCommand="Button_Command"CommandArgument="Button3"UseSubmitBehavior="false"/></div>
</form>
</body>
</html>
很簡單,定義了3個Button,分別注冊了他們的兩個Event:Click和Command。3個Button的Command Event Hander是一樣的:Button_Command,通過指定的CommandArgument來讓Event Handler判斷到底是哪個Button觸發了Command Event。
下面是Code Behind:
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
publicpartialclass_Default:System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
}
protectedvoidButton1_Click(objectsender,EventArgse)
{
stringstringmessage=string.Format("The{0}eventof{1}isfired","Click","Button1");
this.LabelMessage.Text=message;
}
protectedvoidButton2_Click(objectsender,EventArgse)
{
stringstringmessage=string.Format("The{0}eventof{1}isfired","Click","Button2");
this.LabelMessage.Text=message;
}
protectedvoidButton3_Click(objectsender,EventArgse)
{
stringstringmessage=string.Format("The{0}eventof{1}isfired","Click","Button3");
this.LabelMessage.Text=message;
}
protectedvoidButton_Command(objectsender,CommandEventArgse)
{
stringstringmessage=string.Format("The{0}eventof{1}isfired",
"Command",e.CommandArgument);this.LabelMessage.Text+=";"+message;
}
}
關于如何分析ASP.NET Postback的Web Page生命周期就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。