none
用listview配合datapager在大数据量下很慢,求解决办法 RRS feed

  • 问题

  • 搜索一个大约1000w行的表,得到了大约10w行数据,用listview配合datapager生成100个一页的表格显示在页面上,感觉反应速度非常慢,我是把搜索到的结果载入到dataset,然后dataset再绑定listview。有更好的做法吗?我现在有一个初步的想法是,每次换页的时候,再搜索一次,从搜索结果中取100个载入到dataset里,然后绑定给listview,但是这想法明显是有问题的,因为我观察了不少论坛的搜索功能,他其实只产生了一次搜索,如果每换一页都要再搜一次,我猜他服务器不是很容易就要垮了?
    2012年9月17日 14:58

答案

  • 使用如下方法进行优化

    1.查询数据库的时候,不要一次把全部数据全部读取出来,然后再进行分页,

       应该每次只读取当前页的数据,使用分页查询,

       关于分页查询可参照这里:http://blog.csdn.net/zx13525079024/article/details/6429152

    2.查询的时候要根据条件进行查询,并建立相应的聚集索引和非聚集索引。

    3.如果可以的话,最好不要使用服务器控件listview,可以使用table或者repeater进行数据显示


    http://blog.csdn.net/zx13525079024

    2012年9月18日 1:59

全部回复