0

我在我的网站上使用第三方服务器端控件(Telerik RadControls for ASP .NET)。菜单控件具有复杂的结构,它使视图状态的大小膨胀,影响加载时间。我不知道 viewstate 的详细信息,只是 Web 服务器使用它来跟踪控制值。

由于我网站上的大多数页面仅显示,是否可以禁用不接受用户输入的视图状态?在任何情况下,所有动态项目都会在页面加载时重新生成。

4

4 回答 4

2

如果您使用的是 asp.net 4,那么您可以使用该ViewStateMode属性来控制控件的视图状态生成。视图状态模式

如果您不使用 asp.net 4,那么您可以在页面或控件级别关闭视图状态。

<%@ Page Language="C#" EnableViewState="false"%> //disabling viewstate. 

http://msdn.microsoft.com/en-us/library/system.web.ui.page.enableviewstate.aspx

于 2012-01-16T07:44:43.310 回答
1

在您的 aspx 页面顶部,在不需要它的页面上添加参数 enableViewstate="false"。它不会完全禁用视图状态,但会严重减小大小

我没有测试过这个,但我认为这是可能的..

在您的 Web.config 文件中,将属性添加到 pages 标签,然后在需要启用它的页面上,在顶部添加带有 true 的属性

于 2012-01-16T07:42:38.790 回答
1
System.Web.UI.WebControls.CheckBox checkBox = new System.Web.UI.WebControls.CheckBox();
checkBox.EnableViewState = false;
于 2012-01-16T07:43:16.527 回答
1

有多种禁用 ViewState 的方法。在您的情况下,我建议禁用控件上的视图状态:

<telerik:RadMenu ViewStateMode="Disabled"
于 2012-01-16T07:46:30.273 回答