Dotnet Core 2 EF 代码优先,cloud foundry 上的数据库迁移

Dotnet Core 2 EF code first, database migrations on cloud foundry

我根据 this tutorial 代码优先方法在我的项目中使用(使用 .Net 核心 2、EF 核心 2.1)。 一切正常,现在我想在 cloud foundry 上部署我的应用程序,但问题是,运行 命令行(如 dotnet ef database update)没有 dotnet cli。所以我的问题是,我应该如何部署我的项目?

只需在启动中使用,这将在您的应用程序启动时将迁移应用到您的数据库运行:

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
                using (var serviceScope = app.ApplicationServices.GetService<IServiceScopeFactory>().CreateScope())
                {
                    var context = serviceScope.ServiceProvider.GetRequiredService<YourDbContext>();
                    context.Database.Migrate();
                }
}