Asp.net 对于具有大量数据的datagrid,使用什么?

Asp.net 对于具有大量数据的datagrid,使用什么?,asp.net,xml,datagrid,datareader,Asp.net,Xml,Datagrid,Datareader,发现这个有趣的面试问题: 您需要在Web表单上的DataGrid中显示您所在部门过去5年的销售数据。性能非常重要。检索数据时使用的最佳策略是什么 a) 使用DataReader对象来检索 数据网格的数据 b) 使用DataSet对象检索数据集 数据网格的数据 c) 使用简单的select语句作为 数据网格的数据源 d) 使用缓存的XML文件作为数据 使用 数据集 我的答案是c),但我不太确定 有人能给我指出正确的答案并解释给我听吗 谢谢我会用的 您也可以做到这一点。基本上,每当测试提到性能、

发现这个有趣的面试问题:

您需要在Web表单上的DataGrid中显示您所在部门过去5年的销售数据。性能非常重要。检索数据时使用的最佳策略是什么

  • a) 使用DataReader对象来检索 数据网格的数据
  • b) 使用DataSet对象检索数据集 数据网格的数据
  • c) 使用简单的select语句作为 数据网格的数据源
  • d) 使用缓存的XML文件作为数据 使用 数据集
我的答案是c),但我不太确定 有人能给我指出正确的答案并解释给我听吗 谢谢

我会用的


您也可以做到这一点。

基本上,每当测试提到性能、DataReader和DataSet时,经验法则是DataReader==快,DataSet==慢。

我可能会选择提供的答案,但分页肯定是更正确的答案。数据集很慢,加载整个表,而DataReader非常快,只需迭代记录

使用select语句作为数据源只是一种不好的做法,从不推荐使用

  • 如果性能非常重要,那么不要使用数据网格,使用中继器或普通循环
  • 我假设缓存的XML文件(memomry)比从数据库检索数据快,但也会占用大量内存,所以我认为这不是正确的答案
  • select语句和DataReader非常相似,但是DataReader还有一些现成的特性,所以这就是我的答案

  • 是的,这是正确的方法,IMO.+1但我没有投票权:[我个人的答案是“购买一个执行服务器端分页的网格控件,如果它很重要的话”在没有DataReader或DataAdapter的情况下,如何在.net中的数据库上执行select语句?