輕量ORM-SqlRepoEx (十七)SqlRepoEx 2.30 版本更新說明

.Net平臺下兼容.NET Standard 2.0,一個實現以Lambda表達式轉轉換標準SQL語句,支持MySQL、SQL Server數據庫方言,使用強類型操作數據的輕量級ORM工具,在減少魔法字串同時,通過靈活的Lambda表達式組合,實現業務數據查詢的多樣性。

如果想找到替代EF方案,SqlRepoEx是比較好的選擇。

SqlRepoEx已經應用於多個商業項目,通過商業應用,修正應用過程中出現的bug,同時,由於商業應用場景的複雜性,新增了部分新的功能。

SqlRepoEx升級爲2.30,此次升級主要變更爲同型分佈數據庫的支持;

應用場景:

當數據位於多個數據庫中時,

string test1= "datasource=127.0.0.1;username=test;password=test;database=testdb1;charset=gb2312;SslMode=none;";

string test2= "datasource=127.0.0.1;username=test;password=test;database=testdb2;charset=gb2312;SslMode=none;";


 Dictionary<string, string> conkeys = new Dictionary<string, string>();

conkeys.Add("Default", test1);

conkeys.Add("test2", test2);

 

對於asp.core 使用

services.AddDapperSimpleSqlRepo(conkeys);

 

對於應用靜態工廠時

var connectionProvider = new ConnectionStringConnectionProvider(conkeys);

 MySqlRepoFactory.UseConnectionProvider(connectionProvider);

 

當使用默認構造器實例倉儲時,系統使用的是key 爲”Default” 指定的連接,如果指定了連接的Key 實例會使用指定的連接字串來連接數據庫,但key不存時,系統會用key 爲”Default” 指定的連接字串來連接數據庫。

另外,當初始化中沒有指定key 爲”Default”,系統會使用第一個數據庫字串來增加一個(如果指定有兩個,那麼初始完成後就有三個)

如:

conkeys.Add("test1", test1);

conkeys.Add("test2", test2);

系統會默認增加一個

conkeys.Add("Default", test1);

 

如下,訪問的是上面設置的 key 爲 test2的數據庫

 var repository11 = MySqlRepoFactory.Create<Customer>("test2");

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章