ASP.Net学习手迹(1)---ASP.Net页面生命周期
错误: 每个页面的生命周期为用户的访问开始到结束,也就是说程序中的全局变量同时生存到用户的访问结束.
正确: 每个页面的生命周期为用户的每一次访问,也就是说每一次客户端与服务器之间的一个往返过程.全局变量的生命周期在此之间.
例:string gb_string;
void Page_Load(){ if(!IsPostBack) { //第一次被访问的代码 gb_string ="Test!"; }}
void btnSubmit_Click(Object sender, EventArgs e){ //在这里gb_string 为空,是这一次postback新建的字符串
//跟第一次那个被赋值的字符串不是同一对象.}
ASP.NET 页面生命周期1. Page_Init();2. Load ViewState and Postback data;3. Page_Load();4. Handle control events;5. Page_PreRender();6. Page_Render();7. Unload event;8. Dispose method called;
总结:
在Page_Load()中执行的初始化工作
1.一般都是初始化web控件,因为这些控件的状态(值),由系统自动保存(__VIEWSTATE),下次返回时,自动赋值,这是ASP.NET保存"web控件"状态的特性.
2.但是初始的如果是程序中用到的全局变量,就应该注意他的生命周期的问题.如果函数都在一个生命周期中,全局变量的值当然是一致的.但是如果在"由客户激发"的事件中,这就不同了,每个客户事件的激发,都会导致新的页面生命周期的产生,全局变量的值会丢失,因为它们不在同一页面生命周期(就像上面出现的错误1).
Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved. 闵涛 E_mail:admin@mintao.net(欢迎提供学习资源)
鄂公网安备 42011102001154号
站长:MinTao ICP备案号:鄂ICP备11006601号-18