ADO.NET数据表与数据读取器

era*_*mus 10 .net asp.net ado.net

如果您只需要显示数据但不需要操作数据,则DataReader比DataTable更有效.但是,要从数据访问层获取DataReader,我应该打开连接对象吗?我认为这也是一个非常大的效率问题.那么为了充分利用DataReader,还有另一种方法吗?

mar*_*c_s 12

是的,数据阅读器绝对是最有效的 - 但您希望长时间保持连接打开!

  • 用来将DataReader你的数据读入实体对象; 打开连接,读取数据,关闭连接
  • 做你需要做的任何业务对象
  • 存储更改,例如通过使用临时SQL查询,存储过程或您想要的任何其他内容; 再次:打开连接,回写更改,关闭连接

这可能是你能得到的最有效的 - 它是一些工作,一些无聊的代码,以及所有,但它的速度尽可能快.

如果您对开发人员的工作效率比对原始速度更感兴趣,为什么不使用某种ORM来做所有这些无聊,烦人的来回映射?为节省大量编码和杂乱的东西!

  • @erasmus如果它真的是一个小项目,不要担心效率.只需使用最简单的东西.没有规则,每个应用程序都需要尽可能地执行.唯一的期望是它能够满足预期的需求. (2认同)
  • @marc_s,很好的解释.谢谢. (2认同)