我們都知道DataReader比DataTables更快,因爲DataReader用於構建DataTable。如何將DataTable轉換爲IDatareader?
因此,鑑於我已經有一個DataTable .... 爲什麼我要將它轉換爲DataReader?
那麼我正在創建一個名爲IDataProvider的內部接口。該接口旨在在本地和WebService中實現。該接口將有一個方法「Getdata」,該方法接收一些標準信息並返回一些數據。
由於DataReader是最快的數據檢索機制,因此我希望將其用作「GetData」方法的結果類型。 但是我們也知道DataReader是不可序列化的,因此不能通過Web服務在網絡上傳輸...
在網絡的情況下,我會讓本地代理類以DataTable的形式請求數據,然後將其本地轉換爲DataReader。
通過這種方式,本地應用程序無需知道(或關心)它是否在本地或遠程訪問數據。
但是,爲了做到這一點,我需要知道...... 如何在預先存在的DataTable上包裝DataReader?
更新:我的業務邏輯不會保留在webservice中,因爲使用Webservice的DataProvider是可切換的,而不是。 因此,businessLogic將被保留在客戶端應用程序中。
FWIW我正在使用.Net 3.5 SP1
2 Downvotes任何人都在關心評論爲什麼? – 2009-01-26 12:11:01
可能因爲您只聲明您要使用DataReader,因爲您認爲它會幫助您提高性能。有關應用程序設置的更多信息,爲什麼要使用DataReader而不是DataTable以及業務邏輯所在的位置可能會有所幫助。 – 2009-01-26 12:13:10
業務邏輯駐留在客戶端應用程序中。 – 2009-01-26 12:20:24