我正在嘗試創建一個允許您切換多個數據源的系統,例如:從實體框架切換到Dapper。我試圖找到最好的方法來做到這一點。具有多個數據源的數據層體系結構
目前我對不同的數據層有不同的項目,例如, Entity Framework的Data.EF
,Dapper的Data.Dapper
。我已經使用了數據庫方法,但是當它創建模型時,所生成的信息被耦合在一起並且不容易重構,例如,模型分離。
我有一個項目叫做模型,這個模塊包含域和視圖模型,我正在考慮創建Data.Core
並遵循存儲庫模式。但是,這樣做會增加一個額外的層,所以我會有Presentation/Business/Repository/Data。
我想知道這種方法的最佳結構。我是否也應該採用代碼優先的方式來創建我的數據庫?這有助於分離關注並改善抽象。這是一個相當大的應用程序,所以要正確的結構是必不可少的。
感謝您的意見。真的很好的建議,並很高興能走在正確的軌道。 –