发现了Init和Load的事件的差别了

在做一个小系统的时候,居然发现了一个问题,之前一直没有重视。代码如下:

private void Page_Init(object sender, System.EventArgs e)
  
{
    
//初始化viewstate
   if( Request.QueryString["id"!= null && Request.QueryString["id"].ToString() != "" )
   
{
    
this.ViewState["fid"= Request.QueryString["id"].ToString();
   }
 
   
  }

然后是:

private void Page_Load(object sender, System.EventArgs e)
{
Response.Write( 
this.ViewState["fid"].ToString() );
}

居然在其中一个按钮后动作后,在Load事件里居然报错了。
这种情况最近经常遇到,只是稍微改了一下好像没有出错了,所以没有留心。(实际上,从代码的整体来看,没有出错,只是一个逻辑上的巧合而已)

今天再次遇到,就仔细找了一下
发现了原来在Init事件里,不处理ViewState,所以才会报错

具体请看:
http://blog.joycode.com/uestc95/articles/5042.aspx


posted @ 2004-08-18 15:15  芈老头  阅读(595)  评论(0编辑  收藏  举报