2011-04-14 136 views
1

我们正在著名的“无法加载视图状态”的零星报道。追踪是非常困难的,因为我们没有使用任何动态加载的控件。它是零星的。无法加载视图状态 - 没有动态加载控件

“未能加载视图状态,控制 树成视图状态正在 加载必须在 先前的请求曾用于保存视图状态控制树 相匹配。例如, 动态添加控制时, 控件在回发期间添加“

此外还有什么其他原因?我们还没有记录任何应用程序池回复。

+0

您是否在使用不属于核心.NET框架的任何非标准/第三方控件? – Nikki9696 2011-04-14 18:21:32

+0

不,我恐怕不会。 – Sten 2011-04-14 18:49:45

+0

你能找到哪个控件导致了它吗?请参阅禁用“只是我的代码”调试答案http://stackoverflow.com/questions/580704/failed-to-load-viewstate-happening-only-occassionally-tough-to-recreate – Nikki9696 2011-04-14 19:39:00

回答

0

几种可能性:

在页面上,一些控制被添加或去除,因为在网页被发送到客户端。

在网页农场,该页面可能是由不同的服务器进行加密不同的“机器代码”进行处理。我不记得确切的语法,但你可以设置它,所以它们在web.config中都是一样的。

我已经看到了这一点,如果在网页本身的服务器,然后在“旧版本”张贴回上编辑。但似乎你会知道这是否发生。

并根据页面多久“野生”服务器的更新,甚至重新启动它发出和张贴回可能改变机器代码的时间之间。再次,在web.config中设置它来防止这种情况。

哦 - 另外一个问题 - 一些浏览器截断表单字段,所以如果你有视图状态的很多它可能会得到通过后回浏览器截断。这会搞砸了。

+0

感谢您的答复。 “一些控制”:不,不能,这是我们检查过的代码,并没有发现任何类似的东西。 “网络农场”:这里没有使用网络农场。 “编辑,旧版本”:不,不怕。 “在野外”:这种情况经常发生,这很难成为问题。 – Sten 2011-04-14 17:36:46

+0

@我明白这是一个非常古老的问题,但你有没有发现问题所在? – 2014-02-02 16:05:25