2008-09-22 90 views
16

我generaly禁用ViewState中为我的ASP.net控制,除非我明确地知道我将需要视图状态他们。我发现这可以显着减少生成的HTML的页面大小。当启用/禁用视图状态

这是一个很好的做法吗?什么时候应该启用或禁用?

回答

19

是的,这是一个非常好的主意。有人可能会争辩说,它应该已被微软默认禁用,就像缓存一样。

看到的是在增加,你可以使用一个名为Viewstate Analyzer工具规模而言视图状态多么糟糕。当您使用Viewstate开发的现有应用程序时,这非常有用。

另一个很好的理由来禁用ViewState是,这是真的很难在后一阶段禁用,当你有依赖于它的组件的负荷。

5

我认为这是很好的做法。许多ASP.NET开发人员都不知道他们的视图状态为发送给用户浏览器的HTML添加了巨大的包袱。

4

这是一个很好的做法。除非您在回发中使用ViewState值,否则它们是某些复杂控件本身所需要的,因此将ViewState作为发送给客户端的一部分进行保存是个好主意。

0

_Viewstate可以不必要地增加了需要传送的字节数。 因此,除非数据将在下次使用,否则将它关闭是个好主意。

4

您可能会发现包含在"ASP.NET State Management Recommendations" article MSDN上,让你的决策有用的信息。

一般在ASP.NET 2.0及以上禁用ViewState中是破坏性较小由于引入控制状态,用于存储,情报所需的筹款活动等

2

肯定是一个不错的主意,更糟糕的事情是一个网页,其中开发人员每次都在Page_Load中绑定一个dataGrid,但同时也会提交viewstate!

这也是如果你是从AJAX扩展使用的UpdatePanel规划一个很好的主意,这意味着你要提交UpdatePanel的请求期间少。

(不熄火的话说,一个UpdatePanel可以很好:P)