sqlite - 如何在 Azure 上使用 EF 更新/迁移 SQLite 数据库

标签 sqlite asp.net-core entity-framework-core

我正在为我的应用程序使用 SQLite 数据库。在桌面上我可以轻松运行 Add-MigrationUpdate-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/

相关文章:

c# - 如何在Asp.net Core中获取用户浏览器名称( user-agent )?

c# - 如何阻止 asp.net 阻止对文件的访问然后在构建时抛出拒绝访问错误?

asp.net-core - ASP.NET核心: How to change IIS Express port?

entity-framework - 如何处理减慢构建和 IDE 的巨大 efcore 迁移设计器文件

asp.net-core - 部署 ASP.NET Core 1.1.0 和 Entity Framework Core 1.1 : Unable to load assembly system. Collections.Immutable,版本=1.1.37.0

r - 如何使用 dplyr 重命名 SQLite 表?

sql - 如何从另一个SQLite表的全部内容更新一个子集?

iphone - 如何在Theos应用程序中使用sqlite3

c# - 如何使用函数从sqlite数据库中获取数据?

entity-framework - EF Core 3 的 DbContextScope 模式