我们都知道,DataReader比DataTables更快,因为DataReader用于构造DataTable。

因此,鉴于我已经有一个DataTable。...为什么要将其转换为DataReader?

我正在创建一个称为IDataProvider的内部接口。该接口旨在在本地和作为WebService实施。该接口将具有方法“ Getdata”,该方法获取一些标准信息并返回一些数据。

由于DataReader是最快的数据检索机制,因此我想将其用作“ GetData”方法的结果类型。
但是我们也知道DataReader不可序列化,因此不能通过Web服务在Web上传输...

在网络的情况下,我将让本地代理类将数据作为DataTable请求,然后将其本地转换为DataReader。

这样,本地应用程序不需要知道(或不在乎)它是本地访问还是远程访问数据。

但是,为了做到这一点,我需要知道...如何将DataReader包装在预先存在的DataTable周围?

更新:我的业务逻辑将不会保留在Web服务中,因为使用Web服务的DataProvider可以切换为不使用它的。
因此,businessLogic将保存在客户端应用程序中。

FWIW我正在使用.Net 3.5 SP1

最佳答案

只需在您的数据表上调用CreateDataReader

关于.net - 如何将数据表转换为IDatareader?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/479532/

10-14 07:54