EnableViewState详细分析

ASP.NET中,很多地方可以设置EnableViewState,本文主要说明一下在不同位置设置EnableViewState的效果。

1. 在web.config中

在page小节中设置,比如:

<pages enableViewState="false">
 
这样的设置后,所有没有明确指定EnableViewState的控件,都会使用在web.config中指定的值。

2. 在MasterPage中

当在MasterPage中EnableViewState=false时,表示禁用了使用该MasterPage的页面的视图状态信息,包括所有控件,即使页面或控件明确指定EnableViewState=true。

3. 在Page中

当在Page中EnableViewState=false时,表示禁用了该Page的页面的视图状态信息,包括所有控件,即使控件明确指定EnableViewState=true。

4. 在UserControl中

当在UserControl中EnableViewState=false时,表示禁用了该UserControl的视图状态信息,包括所有控件,即使控件明确指定EnableViewState=true。

5. 在控件中

当在控件中EnableViewState=false时,表示禁用了该控件的视图状态信息。

注:如果要确保某个控件使用视图状态,可以在该控件的OnInit事件中,指定该控件的父控件和Page使用视图状态。

我通常的做法:

在web.config中禁用视图状态,当需要启用时再明确指定。

posted @ 2008-12-01 17:17  andy.wu  阅读(2449)  评论(1编辑  收藏  举报