我有2个网络应用程序,我们可以说Legacy1
和New1
。我对应用程序和单独的数据库都有单独的DbContext
。
现在我想将数据从Legacy1
数据库迁移到New1
数据库。我不能简单地在SQL Server中使用copy database
或export database
选项。实体是不同的,我需要在迁移数据时加入一些逻辑。
我决定使用.Net Core Console(.Net Framework)项目来完成此任务。我是否必须将DbContexts
添加到此项目中?此外,我想要映射并执行迁移的所有实体,或者还有其他任何方法来实现此目的。
答案 0 :(得分:0)
最后,我找到了一种简单的方法来实现这一目标。我使用EF DB First
方法为edmx
和source
数据库生成target
个文件。这使我也可以访问相应的Entities
。
我使用源dbcontext
查询源数据库并根据需求操作数据,并使用目标dbcontext
插入目标数据库。我使用AutoMapper
将source
个实体映射到Target
个实体。
这比我之前想象的要简单得多。希望它可以帮助其他人有类似的情况。