如何在每次回发时显示完整的控制树

时间:2012-05-22 15:18:57

标签: asp.net .net-4.0 viewstate

我在其中一个当前项目的非常具体的情况下收到了一个非常标准的Viewstate错误。

  

Sys.WebForms.PageRequestManagerServerErrorException:无法加载   视图状态。要加载viewstate的控制树必须   匹配用于在监视期间保存视图状态的控制树   先前的请求。例如,在动态添加控件时,   在回发期间添加的控件必须与类型和位置相匹配   在初始请求期间添加的控件。

我的问题是,这是一个客户驱动的表单设计器,并且所有控件都是动态的,表单上还有很多跳过逻辑,因此大多数控件在任何给定时间都不可见,并且它似乎是切换导致问题的可见性。但是只有一个非常具体的模式。因为我没有运气在更简单的表单上重新创建问题,或者跟踪未正确重新呈现的特定控件。然后我想一个可靠的方法来解决这个问题,就是每次回发都会在页面底部显示整个控制树。然后我可以比较错误之前和之后的树,看看有什么变化。但我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

刚刚找到它,Page标签中的Trace属性就是我所需要的。

<%@ Page Trace="true" %>

http://msdn.microsoft.com/en-US/library/kthye016%28v=vs.80%29