2010-02-04 100 views
1

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

由于

回答

0

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

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