优先级设置,例如不同级别的viewstate

时间:2010-02-04 15:48:46

标签: asp.net

在ASP.NET中,设置viewstate和类似属性的优先顺序是什么?这些可以在web.config,页面级别以及控件上设置。如果我在web.config(全局),页面级别关闭它,但在控制级别关闭,例如,结果是什么?

由于

1 个答案:

答案 0 :(得分:0)

迭代Page类,并调用每个控件的SaveViewState()方法。因此,如果您的Page类的EnableViewState设置为false,则不会发生此迭代,并且您的控件也将禁用其视图状态。这意味着如果您希望控件启用其视图状态,则页面必须将其EnableViewState设置为true。

如果您想关闭页面上大多数控件的视图状态,那么您必须找到某种解决方法。例如,您可以创建一个小类,迭代遍历您的控件层次结构并关闭指定控件的视图状态。或者,您可以使用某种容器,并禁用该容器的viewstate,以便还禁用其所有chiled控件。您希望允许viewstate的任何控件都可以放在容器外部。这两种方法仍然需要Page的EnableViewState为真。