.Net Microsoft Ajax Viewstate问题

时间:2009-05-22 11:21:31

标签: asp.net-ajax viewstate

一位前同事开发了一个几乎可编辑网格的应用程序(思考时间表)。

MS Ajax用于它,网格包含在“更新”面板中。

更糟糕的是,复杂对象图被保存到viewstate,因此每次页面刷新(即单元格更新)时,所有网格和viewstate都将从客户端传递到服务器在帖子后面并且viewstate大小接近一兆的表现就是裤子。

根据我对Ajax的理解,我们应该只传递最少量的数据,而只传递所需的数据。这需要重写并且成本很高。还有什么其他选择?

2 个答案:

答案 0 :(得分:2)

理想情况下,必须在禁用ViewsState的情况下使用数据网格。这意味着每次回发都会绑定网格。

当绝对需要保留任何控件的状态时,使用

ControlState代替ViewState。您可以阅读有关ControlState here的更多信息。

编辑:此外,还有许多轻量级的ajax-y数据网格。 Flexigrid就是其中之一。这是jQuery实施。

答案 1 :(得分:0)

感谢您的回复。重写是在卡上,但我们需要在此期间修补应用程序以保持客户满意并给我们时间重写它。

我需要一个快速修复列表,我将调查的一个快速修复将把ViewState存储在SQL数据库中。

谢谢,B