0

我有多个页面中存在的 asp GridView。在 gridview 中有复选框、超链接、文本框和编辑按钮来编辑 Gridview 中的文本。在某些页面中,具有复选框、文本框数据传输到服务器以在数据库中删除或编辑的功能。我正在考虑优化页面。那么将 ViewState 用作 GridView 的 false 是个好主意吗?

4

1 回答 1

0

除非遇到问题,否则不应该真正优化。页面是否明显变慢?您确定是导致缓慢的 GridView 的视图状态数据吗?使用某种分析工具或可测量的基准来确定是否存在减速,以及减速在哪里。

除此之外,关闭视图状态将需要您进行额外的编程。随意尝试,看看会发生什么。我会提到一些你可能会遇到的“陷阱”。

我假设现在您正在将数据绑定到if(!Page.IsPostBack)块内 Page_Load 上的 GridView。一旦你这样做了,你就不必再次绑定数据(在正常的 PostBacks 期间),因为视图状态正在维护你的控件状态。

如果您关闭该 GridView 的视图状态,则必须在每次回发时将数据绑定回它。您还必须手动维护 Grid 状态的其他方面(例如,是否处于编辑模式)。

这只是您在做出此类决定时必须考虑的众多权衡之一(额外的编程时间是否值得您从这种优化中获得的潜在收益?)。

于 2013-10-11T14:47:59.333 回答