ViewState没有在回调之间保持,它已启用

时间:2011-02-25 23:18:18

标签: viewstate

以下是添加视图状态密钥的代码:

if (ViewState[params[i].Name] != null || true){
   if (ViewState[params[i].Name] == null) //create ViewState item
     ViewState[params[i].Name] = "SomeValue"; //...}

在第一个回调中,代码运行并添加ViewState项。但是,在第二个回调中,当第一个IF语句被命中以测试ViewState项在那里时,它不是,它是NULL !!

我的网页或控件上的任何位置都没有禁用ViewState。我认为上面的代码是创建一个视图状态项以保持多个回调的正确方法吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

对于回调的默认值,ViewState不处理为什么你得到null。

你可以为自己处理这个问题但肯定不容易。

对于任何类型的问题,静态字段都不是很好的方法。它需要为应用程序中的每个用户获取唯一的密钥,否则将来很难理解行为。

希望我的回答对此有所了解:)

答案 1 :(得分:0)

回答我自己的问题。

我最终为我需要的信息创建了一个静态字典。这项工作没问题。