2
我想在實體框架和Dapper之間創建抽象層。在運行時,我可以選擇實體框架或Dapper,或者我也將它們兩個都包含在內。我知道,我可以使用接口如何在各種ORM(實體框架和Dapper)之間創建抽象層?
public IORM{
Save();
Delete();
//other ORM functions
}
public EntityFramework : IORM{
public Save(){
SaveChanges();
}
public Delete(){
Remove();
}
}
public Dapper: IORM{
public Save(){
//save code goes here
}
public Delete(){
//delete code goes here
}
但是,這是基本的操作和不知道如何在.NET 2.0的核心方法CofigureServices()
配置。
是不同的ORM之間的抽象建議?如果是的話, 在.net 核心2.0中實現Entity framework和Dapper之間的抽象層?
除非應用程序需求需要同時使用sql和nosql數據庫(某種混合使用情況),否則我不會建議抽象ORM的。因此,從當前和未來的需求角度評估用例,如果您的應用程序和整個應用程序完全適用於某種類型的數據庫,則無需進行抽象。 –
請參閱使用Dapper + Dapper Extensions實現Repository和UnitOfWork的示例代碼。 stackoverflow.com/a/45460483/5779732; stackoverflow.com/a/45029588/5779732 –
我想說,在不同的ORM之間創建抽象層並不是特別有用。這需要相當多的努力,投資回報似乎不大可能。畢竟,你爲什麼要做這個開關? – GlennSills