我正在为我的应用程序使用 SQLite 数据库。在桌面上我可以轻松运行 Add-Migration
和 Update-Database
需要的时候。
现在我正在网站上线时进一步开发数据库和功能,我需要运行 Update-Database
在服务器上,但我不知道该怎么做。
是否有一段代码可以在启动期间运行以更新数据库?
由于我的订阅,我没有 Azure 存储或访问命令行,所以这是不可能的。
最佳答案
您可以调用DbContext.Database.Migrate()
在 Configure
Startup
的方法类(class)。如果有挂起的迁移,这将在应用程序启动时自动迁移您的 SQLite 数据库。
public void ConfigureServices(IServiceCollection serviceCollection)
{
...
services.AddDbContext<MyDbContext>(options =>
options.UseSqlite(...));
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
using(var context = new MyDbContext(...))
{
context.Database.Migrate();
}
...
}
关于sqlite - 如何在 Azure 上使用 EF 更新/迁移 SQLite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49271104/