【问题标题】:Workflow for updating latest Entity Framework Core migrations automatically自动更新最新的 Entity Framework Core 迁移的工作流
【发布时间】:2018-11-08 20:52:38
【问题描述】:

所以我有一个 EF Core 项目。当我需要添加/迁移时,我发出并更新命令:

dotnet ef 数据库更新 -v

这一切都很好,如果我需要更新 QA、Staging、Prod 数据库,我会更新我的 appsettings.json 文件中的连接字符串并运行命令。

如果我无法从本地计算机访问生产环境会怎样?您如何将数据库更新到最新的迁移?

如果我记得使用实体框架(不是 .net 核心)。当我部署新版本的 .net 应用程序时,它会尝试自动更新数据库。 .NET core 中是否还存在此功能?

【问题讨论】:

    标签: entity-framework-core


    【解决方案1】:

    是的,你可以运行

    dbContext.Database.Migrate();
    

    在启动时,但将数据库迁移与应用程序生命周期混为一谈通常不是一个好主意 - 最佳做法是让应用程序尽可能快速简单地启动,因为很难远程诊断应用程序启动失败,并且迁移会带来很多不受欢迎的复杂性。

    另一种方法是在部署过程中运行迁移操作。这取决于您使用什么方法进行部署,但比如说您使用 CI 服务器,您将能够运行

    dotnet ef database update
    

    复制新代码但启动应用程序备份之前。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-08
      • 2019-01-28
      • 2021-08-24
      • 1970-01-01
      • 2017-05-16
      • 2017-10-27
      • 1970-01-01
      相关资源
      最近更新 更多