关于AJAX,加了UpdatePanel后,为什么会变得很慢?

kinlin 2008-06-04 12:04:27
页面有GridView,在GridView之外有UpdatePanel,在UpdatePanel内有Button
问题是:

当GridView中只有10条记录时,点击Button,很快触发
但当GridView中只有1000条记录时,点击Button,就会变得很慢

个人感觉GridView的每行都有3个TextBox,控件较多,好象点击Button时UpdatePanel把整个页面都提交了
不知何原因,还请高手赐教.
...全文
731 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
cwj0423 2009-02-09
  • 打赏
  • 举报
回复
GridView.EnabledViewState = false;
cat_hsfz 2008-06-06
  • 打赏
  • 举报
回复
GridView内有1000条记录,如果全页PostBack都已经很慢,用了UpdatePanel把1000条记录一起更新,当然还是很慢。

对于这种情况,你必须重新定义UpdatePanel的范围,例如为Button套一个独立的UpdatePanel,假如Button事件不需要更新GridView内容的话。

如果你的Button事件要更新GridView的内容,那么用UpdatePanel是无法解决效率问题的,一定会导致1000条记录重新下载,即使你仅仅更新其中的3条。你要优化,就改为用Web Service,自己在客户端用JavaScript更新GridView输出的<table />吧。
zhulei2008 2008-06-06
  • 打赏
  • 举报
回复
我觉得这个玩意还不如自己写的好
Jinglecat 2008-06-05
  • 打赏
  • 举报
回复
但当GridView中只有1000条记录时,点击Button,就会变得很慢

===========

一次性就显示 1000 条数据? 老大,这么多数据 post 回去然后 back 回来 是要时间滴
tianhuo_soft 2008-06-05
  • 打赏
  • 举报
回复
局部刷新只使用于 小数据而不是大数据
你看中华英才网www.chinahr.com 的登录窗口 就是一个局部刷新

建议用在100PX*100PX以内的地方
阿里路亚1984 2008-06-05
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zlkingdom 的回复:]
你取数据的时候做了分页处理吗?没做的话肯定慢
做了的话应该没什么影响的
[/Quote]

建议AJAX 页面使用分页 ~
kinlin 2008-06-05
  • 打赏
  • 举报
回复
现在问题是updatepanel中只有一个Button,所有其他控件都在GridView中,
GridView不在updatepane中,但GridView中的控件多少却在影响updatepane的处理,不知是何缘故?
lawbc 2008-06-05
  • 打赏
  • 举报
回复
一般不用控件来做
datahandler2 2008-06-05
  • 打赏
  • 举报
回复
ajax不适合多数据情况
kawensong 2008-06-04
  • 打赏
  • 举报
回复
UpdatePanel
其实并不是真正的局部刷新,看上去是那样
amandag 2008-06-04
  • 打赏
  • 举报
回复
因为你这个局部刷新和整页提交已经区别不大了,传输数据总得时间
zlkingdom 2008-06-04
  • 打赏
  • 举报
回复
你取数据的时候做了分页处理吗?没做的话肯定慢
做了的话应该没什么影响的
烈火焚身 2008-06-04
  • 打赏
  • 举报
回复
学习
sxmonsy 2008-06-04
  • 打赏
  • 举报
回复
大数据量下还是不要用AJAX了
luckyboy101 2008-06-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 amandag 的回复:]
因为你这个局部刷新和整页提交已经区别不大了,传输数据总得时间
[/Quote]
tiancs 2008-06-04
  • 打赏
  • 举报
回复
你页面没有在updatepanel中的内容只是很少量的,而updatepanel中承载这页面中的大部分数据,所以当然慢了,如果updatepanel仅有页面中少量的内容的话,以外有大部分的话,才能体现出updatepanel的效果。

panw520 2008-06-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 amandag 的回复:]
因为你这个局部刷新和整页提交已经区别不大了,传输数据总得时间
[/Quote]
wxg22526451 2008-06-04
  • 打赏
  • 举报
回复
数据量大,页面又只有Gridview。。
“局部刷新”后肯定区别不大。。
syc958 2008-06-04
  • 打赏
  • 举报
回复
UpdatePanel 更新在数据量小的时候还可以的!大的时候比如一棵根深叶茂的树,一个公司的财务年度报表,还有你说的一下传输上千上万的记录以及服务器访问量很大的站点!这些都会让你在用UpdatePanel 的时候的效率远远比不上不用它的时候!因为他不只要让页面完成传统的所有的任务还要附加上大量的控件指令和特定的操作!
RainySummer 2008-06-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 kawensong 的回复:]
UpdatePanel
其实并不是真正的局部刷新,看上去是那样
[/Quote]
加载更多回复(2)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧