【问题标题】:What are the best practices for using AJAX with DataGrids?将 AJAX 与 DataGrid 结合使用的最佳实践是什么?
【发布时间】:2010-10-29 07:23:12
【问题描述】:

我有一个数据网格和一个更新面板。现在,我只是浏览了一些博客,发现您应该尽可能少地使用更新面板。在我的情况下,我有一个 Datagrid 和一个更新面板,这将是最好的情况?

1) 将 Datagrid 保留在更新面板内。

2) 在 ItemTemplates 中使用更新面板。这样只有当我只更新所选行而不是整个网格时才更新。

【问题讨论】:

  • 我也有点糊涂了,你到底在说什么?
  • 我正在使用 VB.NET,我对将 Datagrid 保留在更新面板中或将更新面板放在 ItemTemplate 中的 DataGrid 中感到困惑。

标签: asp.net ajax datagrid


【解决方案1】:

不幸的是,除非您的 DataGrid 非常大,否则这两种方式都不会产生太大影响。

您的大部分开销通常用于重新实例化页面。即使您的 UpdatePanel 仅发送回一个渲染行,也必须重新创建和渲染整个 Page,包括整个 DataGrid,然后才能提取 HTML 的相关部分并将其发送回浏览器。

如果您所拥有的一切有效,我将不理会它,并将所有持续的努力集中在更加以客户为中心的方法上,这将获得巨大的性能提升。

【讨论】:

  • 嗨,戴夫,你好吗?是的,我的数据网格很大。这就是我问这个问题的原因。你的建议是什么?我现在应该使用更新面板还是转向 jquery 或 JSON?请帮帮我。
  • 为了提高性能,客户端技术(jQuery、JSON 等)绝对是要走的路。没有办法让 UpdatePanel 在复杂/大页面上表现得相当。
【解决方案2】:

如果性能是您的目标,请从 DataGrid 开始。它在视图状态中存储的垃圾数量惊人。

UpdatePanel 本身并不像 DataGrid 那样糟糕。

【讨论】:

  • 我知道它存储的垃圾。但是,我现在需要这个。那么,在目前的情况下,对我来说最好的选择是什么?
  • 无论你做什么,当使用更新面板时,整个视图状态无论如何都会被提交回来。因此,要么坚持第 1 项,因为它需要维护的代码更少并且更容易找出任何问题;或者,2 完全摆脱更新面板,转而采用不同的方法。通过不同的方法,我的意思是不使用 .Net 版本的 Ajax。
  • 我只是想到了另一种选择。请改用 JSON 请求。这将导致浏览器和服务器之间的流量要少得多。 encosia.com/2007/07/11/…
猜你喜欢
  • 2010-09-06
  • 2013-08-11
  • 2014-12-13
  • 2013-08-20
  • 2010-11-28
  • 2020-11-03
  • 2018-06-22
  • 2018-03-13
  • 1970-01-01
相关资源
最近更新 更多