[問題] 採用抽象工廠模式與回傳的資料

看板C_Sharp作者 (嗯)時間15年前 (2010/04/30 23:10), 編輯推噓2(204)
留言6則, 3人參與, 最新討論串1/1
在看大話設計模式 關於抽象工廠模式的部分 他舉的例子是以抽象工廠模式 避免底層因更換資料庫而大幅調整 實際上在操作時 資料庫回傳 通常是採用DataReader or DataSet 視資料量與操作目的而定 假設如果需要使用DataReader 仍舊得配合資料庫使用不同的類型 (SqlDataReader or OracleDataReader) 這樣似乎違背了抽象工廠模式的初衷!? 想請問一般這種狀況都是如何處理呢??? 謝謝大家!!! -- ◢◣ ◢◣◥████ ◢███◣ ████ ███▉█ ◢█ ◣◢ ██ ███ ◥█ ███▉█ ◢▉█ ◢██ ███ ◢██ ◢██ ███ ◥██◤ █▇▇▇◤ █▉█ █▇▇ █▇ ▉▇▇ █▉█ ██ ▉▉█▏▏◢█ ██▇◣ █▇█ ▇▇█ ██ ███ █▇█▎██ █▉▉█▏▏ rushcat -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.193.86.169

04/30 23:17, , 1F
如果你的product是指DataReader的話,那兩種DataReader都有
04/30 23:17, 1F

04/30 23:18, , 2F
繼承IDataReader介面,你的clinet不用被榜死在某個特定的DB
04/30 23:18, 2F

04/30 23:27, , 3F
沒有注意到他們實作的介面...THX!!!
04/30 23:27, 3F

05/01 18:05, , 4F
不過如果要使用特定資料庫的特定型別你還是要使用具體
05/01 18:05, 4F

05/01 18:06, , 5F
實體,e.g. Oracle RefCursor Type
05/01 18:06, 5F

05/01 20:22, , 6F
那想請問 大家會因此都改用DataSet或是都以XML傳值?
05/01 20:22, 6F
文章代碼(AID): #1BslBD7L (C_Sharp)