C# 何时以及如何初始化ViewState?
我正在尝试使用ViewState存储集合,但它始终会导致错误: 对象引用未设置为对象的实例。 我不知道什么时候初始化,在哪里初始化?有时我使用:C# 何时以及如何初始化ViewState?,c#,asp.net,viewstate,C#,Asp.net,Viewstate,我正在尝试使用ViewState存储集合,但它始终会导致错误: 对象引用未设置为对象的实例。 我不知道什么时候初始化,在哪里初始化?有时我使用: if(ViewState["X"]==null) ViewState["X"] = new List<Checkitem>(); if(ViewState[“X”]=null)ViewState[“X”]=newlist(); 我把它放在Page_Init()事件中,但每次它都会将它初始化为一个新实例 当我试着这样写的时候: if (
if(ViewState["X"]==null) ViewState["X"] = new List<Checkitem>();
if(ViewState[“X”]=null)ViewState[“X”]=newlist();
我把它放在Page_Init()事件中,但每次它都会将它初始化为一个新实例
当我试着这样写的时候:
if (!IsPostBack)
ViewState["keywords"] = new List<Checkitem>();
if(!IsPostBack)
ViewState[“关键字”]=新列表();
它不会在以后初始化并显示上面提到的错误 看看这篇文章和我的答案,我建议你仔细阅读ASP.NET页面生命周期(参考文章中包含的图像应该提供一些线索,说明ViewState在哪里可用:
ViewState.Add("key", "value"); //adding value in viewstate
String abc = ViewState["key"].ToString(); //getting value from viewstate
请参阅本文和我的答案,我建议您阅读ASP.NET页面生命周期(参考文章中包含的图像应提供一些关于ViewState可用位置的线索: