对使用GitHub部署的dotnet核心站点运行azure上的迁移

时间:2016-10-21 13:21:58

标签: azure asp.net-core entity-framework-core

我有一个用.Net核心构建的小网站,其中包括一个SQLite数据库和实体框架核心。我在Mac上使用VS Code。

在本地管理数据库很容易 - dotnet ef database update效果很好。问题是在部署到Azure时运行迁移。

我的repo在GitHub上,当我推送到主分支时,我将Azure配置为从GitHub中提取代码。部署工作正常,但迁移不在Azure上运行。

我已经看到一些建议,我可以在Startup.cs中使用yourDbContext.Database.Migrate(),但似乎.Migrate()不再可用。

我尝试从Azure下载部署脚本并通过将call :ExecuteCmd dotnet ef database update -e Production添加到deploy.cmd来自定义它,但这似乎不起作用。

我尝试使用我可以通过Kudu网站访问的PS shell来手动运行迁移,但在尝试运行dotnet ef database update时,结果为No executable found matching command "dotnet-ef"

这里有一个非常相似的问题(EF Core (1.0.0) Migrations On Azure App Services),但这个问题没有得到任何答案。

1 个答案:

答案 0 :(得分:7)

在代码中初始化数据库时,可以运行context.Database.Migrate()。首次启动应用程序时将运行迁移