页面有GridView,在GridView之外有UpdatePanel,在UpdatePanel内有Button
问题是:当GridView中只有10条记录时,点击Button,很快触发
但当GridView中只有1000条记录时,点击Button,就会变得很慢个人感觉GridView的每行都有3个TextBox,控件较多,好象点击Button时UpdatePanel把整个页面都提交了
不知何原因,还请高手赐教.

解决方案 »

  1.   

    UpdatePanel
    其实并不是真正的局部刷新,看上去是那样
      

  2.   

    UpdatePanel 更新在数据量小的时候还可以的!大的时候比如一棵根深叶茂的树,一个公司的财务年度报表,还有你说的一下传输上千上万的记录以及服务器访问量很大的站点!这些都会让你在用UpdatePanel 的时候的效率远远比不上不用它的时候!因为他不只要让页面完成传统的所有的任务还要附加上大量的控件指令和特定的操作!
      

  3.   

    数据量大,页面又只有Gridview。。
    “局部刷新”后肯定区别不大。。
      

  4.   

    你页面没有在updatepanel中的内容只是很少量的,而updatepanel中承载这页面中的大部分数据,所以当然慢了,如果updatepanel仅有页面中少量的内容的话,以外有大部分的话,才能体现出updatepanel的效果。
       
       
      

  5.   

    现在问题是updatepanel中只有一个Button,所有其他控件都在GridView中,
    GridView不在updatepane中,但GridView中的控件多少却在影响updatepane的处理,不知是何缘故?
      

  6.   


    建议AJAX 页面使用分页 ~
      

  7.   

    局部刷新只使用于 小数据而不是大数据
    你看中华英才网www.chinahr.com 的登录窗口 就是一个局部刷新建议用在100PX*100PX以内的地方
      

  8.   

    但当GridView中只有1000条记录时,点击Button,就会变得很慢 ===========一次性就显示 1000 条数据? 老大,这么多数据 post 回去然后 back 回来 是要时间滴
      

  9.   

    GridView内有1000条记录,如果全页PostBack都已经很慢,用了UpdatePanel把1000条记录一起更新,当然还是很慢。对于这种情况,你必须重新定义UpdatePanel的范围,例如为Button套一个独立的UpdatePanel,假如Button事件不需要更新GridView内容的话。如果你的Button事件要更新GridView的内容,那么用UpdatePanel是无法解决效率问题的,一定会导致1000条记录重新下载,即使你仅仅更新其中的3条。你要优化,就改为用Web Service,自己在客户端用JavaScript更新GridView输出的<table />吧。
      

  10.   

    GridView.EnabledViewState = false;