答案:逻辑上, DataAccessor包含一个SQL Connection和几个SQL DataAdapters(见图2)。你可将并行的方法用于OLE DB,运用相同的DataAccessor类,它把ESTD同数据层内部隔离开来。ESTD一般不知道你用的是哪个适配器(adapter)。你可以用一个适配器通过一个单一的select语句来得到多个表,也可以将多个适配器用于单个表的更新。Fill方法调用一个GetFillAdpaters方法,为特殊的数据集得到适当的适配器。记住封装这个映射,因为它可能随着你的程序的改变而改变。
如果你用组件代替类, 你可以利用ADO.NET提供的向导创建连接和适配器。一个组件是一个特殊的类,它提供了设计时的界面。运用组件可以简化开发,但是将代码拷贝到一个简单的类不能极大地提高性能,因为你控制对象的实例化。
通常需要参数来指定读取哪个数据。为了方便,我把它们存在例子中的一个哈希表(hash table)中。对于生产应用程序,你可以选择一个更复杂的方法来更好地将UI层同详细参数隔离开。 你可以把值传递到一个专门的Fill方法,或者可以通过生成代码,为每组参数创建一个单独的类。然后,DataAccessor用PrepCmd中的值填充SQL Command的参数(见列表1)。
上一个:创建一个n层的体系架构,它可以通过运用ADO.NET的功能使开发简单化。-zt(1)
下一个:构建可扩展的体系架构 (续)-zt(2)