ABP使用多個(gè)同類型數(shù)據(jù)庫
由于項(xiàng)目需求,現(xiàn)需要將mysql里面的部分表遷移到另一個(gè)數(shù)據(jù)庫里面,abp框架是支持多個(gè)數(shù)據(jù)庫。
官方教程鏈接
https://docs.abp.io/zh-Hans/abp/latest/Entity-Framework-Core-Migrations#%E6%9B%B4%E6%94%B9%E8%BF%9E%E6%8E%A5%E5%AD%97%E7%AC%A6%E4%B8%B2%E9%83%A8%E5%88%86
個(gè)人使用過程如下
1、修改appsettings.json 文件的連接字符串部分,添加多一項(xiàng),如上圖
2、在 xxxx.EntityFrameworkCore 模塊添加多一個(gè)數(shù)據(jù)庫連接的上下文
ShopCmsDbContext、ShopCmsDbContextFactory ,里面的內(nèi)容跟原來的差不多只不過是類名跟連接串不一樣,這里就不貼代碼了
3、在 xxxEntityFrameworkCoreModule的ConfigureServices里面注入新的數(shù)據(jù)庫上下文依賴
4、進(jìn)行數(shù)據(jù)遷移,按照官方的來,可用再新一個(gè)遷移模塊,不過我這里不想麻煩就不建了。直接進(jìn)入遷移命令。打開程序包管理控制臺
發(fā)現(xiàn)抱錯(cuò)了,原因是項(xiàng)目里面有多個(gè)數(shù)據(jù)庫上下文,需要我們指定一下?
t -Context xx 指定需要遷移的數(shù)據(jù)庫,同樣的道理執(zhí)行 Update-Database 也需要指定,如圖

標(biāo)簽: