天天看點

ASP.NET 系統支援資料庫通路設計

系統設計時,往往要考慮到相容多種資料庫,拿常見的三種資料庫:sqlserver,mysql,oracle為例,常見的三層設計可以分為:業務邏輯層,資料通路層,實體層;他們的結構大緻如下:

ASP.NET 系統支援資料庫通路設計

三種資料庫對應有三套資料庫通路類,為了友善組織代碼,往往将讀寫一種資料庫的類放到對應命名的檔案夾下,代碼結構大概如下:

ASP.NET 系統支援資料庫通路設計

業務邏輯層:

以上面的代碼為例,業務邏輯層要調用資料通路層時,可以這樣來執行個體化資料庫通路對象:var db = dbfactory.getservice<iadministrator>();

資料通路層:

關鍵點在于如何動态執行個體化資料庫通路對象,即上面的dbfactory.getservice方法如何實作。

以上代碼即可實作:根據配置檔案設定的資料庫類型,動态執行個體化對應的資料庫通路對象。

完整代碼下載下傳