.aspx中
比如,存在一个DataGrid,这个DataGrid将要承载一个查询所返回的10000条以上数据,而在客户端请求一个这样的查询后,需要等待很长的时间,等客户端接收完所有的回传信息后,才开始构建屏幕显示。有没有一种方法,让客户端一边接收,就一边写屏???
望高人指点!!!!!!!!!!!!

解决方案 »

  1.   

    LZ想要的结果可以用缓存输出,不过缓存输出有个限制,输出的东西要不在表格内,用DataGrid肯定不能实现了。
      

  2.   

    分页显示是一个办法,但是,如果是DataGrid嵌套DataGrid,子DataGrid的显示值必须完全显示,才能显体现出此次查询的意义,而子DataGrid又是一个多达5000条记录的海量查询,那么......请指点
      

  3.   

    提一个思路.参考 ajax 技术, xmlhttp + javascript.首先将所有显示集读入到一个内存中的 dataset, 而不是直接绑到 datagrid 中.然后利用 xmlhttprequest 顺次发送请求, 每次像 dataset 截取一小段, 比如 50 行数据, 返回结果后利用 javascript appendChild 方式插入表格. 这样不用刷新页面, 但可以一段一段逐渐显示.
      

  4.   

    如果我没搞错楼主的意思的话这应该是唯一解决方法, Ajax 技术可以去 Ajax 板块进一步查询.
      

  5.   

    请大家斧正,我的目的是不是根本就没法实现,我静思了一下,无论是单独采用C#技术,还是ajax技术,网络请求,与回传的基制都是在服务器端处理完请求的所有返回内容后,才一次性全部回传到客户端,那么有没有一种技术或方法,让客户端收到内容即写屏(不是全部内容,比如全部内容为一万行DataGrid,客户端收到第一行即写屏的同时,又在接收第二行,第三行,第N行),而不是在接收完全部回传内容后,再写屏;