首页 文章

用于自动更新最新Entity Framework Core迁移的工作流程

提问于
浏览
1

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

dotnet ef数据库更新-v

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

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

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

1 回答

  • 2

    是的,你可以跑

    dbContext.Database.Migrate();
    

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

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

    dotnet ef database update
    

    after 复制新代码但 before 启动应用程序备份 .

相关问题