何时以及如何初始化ViewState?

时间:2009-07-30 09:54:56

标签: c# asp.net viewstate

我正在尝试使用ViewState来存储集合,但它总是让我得到错误: 你调用的对象是空的。 我不知道什么时候初始化它在哪里?有时候我会用:

if(ViewState["X"]==null) ViewState["X"] = new List<Checkitem>();

我将它放在Page_Init()事件中,但它每次都在初始化它到新实例!!

当我尝试写它时:

 if (!IsPostBack)
            ViewState["keywords"] = new List<Checkitem>();

以后没有初始化并显示上面提到的错误!!

2 个答案:

答案 0 :(得分:1)

看到这篇文章和我对它的回答,我建议你阅读ASP.NET页面生命周期(参考文章中包含的图像应该提供一些线索,因为ViewState可用:

SO POst

答案 1 :(得分:0)

ViewState.Add("key", "value"); //adding value in viewstate 
    String abc = ViewState["key"].ToString(); //getting value from viewstate