Quando e como inicializar o ViewState?
Pergunta
Eu estou tentando usar ViewState para armazenar uma coleção, mas sempre me o erro: Referência de objeto não definida para uma instância de um objeto. Eu não sei quando para inicializar e onde? Às vezes eu uso:
if(ViewState["X"]==null) ViewState["X"] = new List<Checkitem>();
e eu colocá-lo no evento Page_Init (), mas mantém sua inicialização cada vez que uma nova instância !!
Quando tento escrever assim:
if (!IsPostBack)
ViewState["keywords"] = new List<Checkitem>();
Não é inicializado depois e mostra o erro mencionado acima !!
Solução
ViewState.Add("key", "value"); //adding value in viewstate
String abc = ViewState["key"].ToString(); //getting value from viewstate
Outras dicas
Veja este post e minha resposta a ele, eu sugiro que você leia-se sobre ASP.NET página Ciclo de Vida (a imagem incluída no pós referenciados deve fornecer algumas pistas sobre onde o ViewState está disponível:
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow