实体框架核心随项目一起更新数据库

时间:2020-03-21 21:42:29

标签: entity-framework-core

我创建了一个blazor项目,该项目已连接到通过表单提取信息的数据库。我也继续为该数据库添加了迁移。现在,我们的生产数据库每90天就会制作一个新表。我的问题是对于EF Core,我可以在代码中写一些东西来用最新的Db更改更新解决方案并每天运行一次吗?我已经阅读了EF Core脚本,但是找不到任何具体示例。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

假定它是Blazor Server应用程序,则在Program.cs中,您可以在每次应用程序启动时(如果有新的迁移)通过执行以下操作来迁移数据库:

var host = CreateHostBuilder(args).Build();
using var scope = host.Services.CreateScope();
var services = scope.ServiceProvider;
var context = services.GetRequiredService<YourDbContext>();
await context.Database.Migrate(); // or MigrateAsync();
host.Run();