我们都知道DataReader比DataTables快,因为DataReader在构建DataTable时使用。
那么,既然我已经有了一个DataTable... 为什么我要将它转换为DataReader呢? 嗯,我正在创建一个名为IDataProvider的内部接口。该接口旨在在本地和作为Web服务实现。该接口将具有一个名为"Getdata"的方法,该方法需要一些条件信息并返回一些数据。
由于DataReader是最快的数据检索机制,因此我希望将其用作"GetData"方法的结果类型。 然而,我们也知道DataReader不可序列化,因此不能通过Web服务跨网络传输...
在Web的情况下,我将使本地代理类请求数据作为DataTable,然后在本地将其转换为DataReader。
通过这种方式,本地应用程序无需知道(或关心)其是在本地访问数据还是远程访问数据。
但是,为了实现这一点,我需要知道...如何在现有的DataTable上包装一个DataReader? 更新:我的业务逻辑不会保存在WebService中,因为使用Webservice的DataProvider可以切换为不使用它的DataProvider。业务逻辑将在客户端应用程序中实现。
值得一提的是,我正在使用.Net 3.5 SP1。
那么,既然我已经有了一个DataTable... 为什么我要将它转换为DataReader呢? 嗯,我正在创建一个名为IDataProvider的内部接口。该接口旨在在本地和作为Web服务实现。该接口将具有一个名为"Getdata"的方法,该方法需要一些条件信息并返回一些数据。
由于DataReader是最快的数据检索机制,因此我希望将其用作"GetData"方法的结果类型。 然而,我们也知道DataReader不可序列化,因此不能通过Web服务跨网络传输...
在Web的情况下,我将使本地代理类请求数据作为DataTable,然后在本地将其转换为DataReader。
通过这种方式,本地应用程序无需知道(或关心)其是在本地访问数据还是远程访问数据。
但是,为了实现这一点,我需要知道...如何在现有的DataTable上包装一个DataReader? 更新:我的业务逻辑不会保存在WebService中,因为使用Webservice的DataProvider可以切换为不使用它的DataProvider。业务逻辑将在客户端应用程序中实现。
值得一提的是,我正在使用.Net 3.5 SP1。