2010-04-08 39 views
0

有趣的事情发生在我身上... 我有一个数据行的网格,但页面将失败有几个回发。我用提琴手检查它,发现每次回帖后视图状态会扩展2-3次。视图状态在回发后变大

我做了触发邮件的事情是搜索和排序。我不知道它是如何发生的。有人可以给我一个提示吗?

谢谢!

+1

你真的需要viewstate吗? – ZippyV 2010-04-08 20:08:20

+0

您可能需要发布代码。 Viewstate不会自行增长;发生了一些事情。没有看到代码,就很难提供帮助。 – 2010-04-08 20:14:44

回答

0

好的,我解决了这个问题。 我认为ViewState就像是一个保存关键值对列表的字典。 在我的情况下,我的价值是对象,这是一个地址或引用。所以当我从ViewState中获得一个对象时,不小心将新的子对象分配给该对象。所有新的孩子将自动放入ViewState。不幸的是,在我的代码中,真的有一个不小心的循环,让ViewState的孩子们在内存中创建副本并将其添加回来!代码不能区分重复的孩子,因为他们在不同的地址.... 因此,最后页面得到2倍大在每个职位回来和轰隆!!!!!!!

谢谢你们都一样!

0

我认为,首先要找到至极控制是使视图状态成长(也许您有任何下拉列表框中,你忘了清除,并在每个回来后,你添加更多项)

要做到这一点,一个接一个地放在你的控件上viewstate = false。

你找到了造成问题的控件,只要检查你是否忘记清除它,然后你只是向它添加数据。