问题:
    有上万笔的数据,要求每1000笔分页。目前的方法是:用ajax取数据,在本地拼“Div+数据”显示出来,这样显示效果不好,很慢。试过用.net的DataGrid效果一样,很慢。因而想在此寻求一个比较好的显示大数据的方法,是不是要在缓存、线程、并发处理等方面入手解决呢?
    请高手帮忙给个方法或思路!

解决方案 »

  1.   

    主要是dataGrid的viewState太大了,把它禁用,然后用存储过程分页.我想可以了
      

  2.   

    1:数据库每次捞取1000条,不能一下读到内存再取1000条2:1000这个定义的太多,人的眼睛是一下看不了这么多的,建议为20/50/1003:AJAX可以再分段取,每次取50,慢慢取到1000
      

  3.   

    在sql中只取当前页要显示的数据就可以了
      

  4.   

    有没有人做过这种大数据的呢?
    用存储过程也有试过
    取数据是很快的,上万笔一两秒就取到了。只是让它显示出来比较慢,我显示的方式是拼“DIV结构+取得的数据”用javascript打印出来的,这段时间发了很多时间!
      

  5.   

    用AJAX也可以分批次取,每次取50条,取到1000就停下.
      

  6.   

    用AJAX分批次取如何实现呢,这是个好办法,能详细点说吗?
    如果每次取50条,直到1000
    那要经历这一过程吧:取50拼Div显示,再取50拼Div追加显示...直到追加完1000
    这种分段显示得有个什么驱动事件之类的,让每阶段的显示正常进行吧???
    这边有点不太懂,恳请赐教!
      

  7.   

    顶楼上的!不过我还要补充一点,你千万不要用select *之类,要多少列选择多少列,问题就解决了.我测试过20万数据.
      

  8.   

    是C/S程序吧..1000条得话差不多..上面说得对.别用 select *,就OK了...另外索引,主键啊啥东西设置好了就行了.
    其他没啥讲究..
      

  9.   

    看一下MSDN上的文章,讲DataGridView加载显示效率的。
    Best Practices for Scaling the Windows Forms DataGridView Control
    http://msdn.microsoft.com/en-us/library/ha5xt0d9.aspx