我认为必须测试ef迁移。至于我,集成测试将是最佳解决方案。当前的解决方案是将迁移应用于内存数据库,但问题是我还想运行迁移脚本。
您知道如何使用c#代码应用迁移吗?
获取您的背景和电话
context.Database.Migrate();
在Startup.cs Configure方法中,我们运行这样的迁移(在.Net core 2.0中):
using (var serviceScope = app.ApplicationServices.GetRequiredService<IServiceScopeFactory>().CreateScope())
{
serviceScope.ServiceProvider.GetService<DataContext>().Database.Migrate();
}
我不确定如何通过testa测试这个,可能备份并将实时数据库恢复到测试数据库,然后设置DataContext指向测试并在那里运行迁移?