一直以来DataSet和泛型集合,实体的用法都是我们争议的对象,比如在三层架构中我们到底用什么好呢?下面就来重点讨论这个问题。
我们知道Ado.net是一个对数据库操作的组件,里面存放着很多数据操作的类,但是他最大的好处就是可以在断开连接的时候继续和数据打交道,这些都因为有一个重要的对象DataSet,它相当于是一个小型的仓库,我们把数据先读到这个仓库里,也就是计算机的内存中,所以下次访问的时候就直接去内存中访问就可以了,这是它的好处,但是同样我们也看出了它的劣势
1、
2、
3、
4、
综上所述,所以在.net2.0中用实体和泛型集合替换了DataSet,把数据封装到实体中,这样读取单个数据就很简单了,返回整个或者很多这样的对象的时候我们可以用强类型集合即泛型集合,将对象保存到泛型集合中,然后返回这个泛型集合就可以了
无论是DataSet和实体,泛型集合都有它的优势和劣势,我们可以结合着使用
我们知道DataSet还有一个好处,就是可以执行多表查询,无论有关联的还是无关联的,所以在我们想执行多个无关联表的时候,可以使用DataSet,这样他可能比泛型集合要省事,写一个简单的项目也可以使用DataSet,另外,如果你想偷懒,也可以使用,呵呵
其他的时候,特别是做大型项目的时候,我建议最好使用实体和泛型集合,这样也符合面向对象的原则