从一年前学android,首先了解到的是android页面的生命周期,对于了解android的运行机制至关重要,同样,要学ASP.NET,生命周期也是如此.对于初学者,可以了解的不用这么细,但对于学过asp.net,并做过一些项目的人士,对于生命周期,有很好的提高促进作用.
在做ASP.NET的项目时,特别是初期,要编写一些基类,或者是一些基础通用控件.虽然现在网上很多开源的控件,但如果了解生命周期,对于基类和控件的开发是非常有利的.
在此给出一些生命周期的链接:(很多资料都可以从微软官方的msdn上查到,非常详细)
应用程序生命周期 流程图
页面和控件生命周期 流程图
页面流程测试(为了方便页面执行顺序测试,可使用如下代码,直观清晰)
public partial class TestPage: System.Web.UI.Page
{
protected void Page_PreInit(object sender, EventArgs e)
{
Response.Write("Page_PreInit<br/>");
}
protected void Page_Init(object sender, EventArgs e)
{
Response.Write("Page_Init<br/>");
}
protected void Page_InitComplete(object sender, EventArgs e)
{
Response.Write("Page_InitComplete<br/>");
}
protected void Page_PreLoad(object sender, EventArgs e)
{
Response.Write("Page_PreLoad<br/>");
}
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("Page_Load<br/>");
}
protected void Page_LoadComplete(object sender, EventArgs e)
{
Response.Write("Page_LoadComplete<br/>");
}
protected void Page_PreRender(object sender, EventArgs e)
{
Response.Write("Page_PreRender<br/>");
}
protected void Page_SaveStateComplete(object sender, EventArgs e)
{
Response.Write("Page_SaveStateComplete<br/>");
}
protected void Page_Unload(object sender, EventArgs e)
{
Response.Write("Page_Unload<br/>");
}
}