Entity framework core 自动更新最新实体框架核心迁移的工作流

Entity framework core 自动更新最新实体框架核心迁移的工作流,entity-framework-core,Entity Framework Core,所以我有一个EF核心项目。当我需要添加/迁移时,我会发出并更新命令: dotnetef数据库更新-v 这一切都很好,如果我需要更新QA、Staging、Prod数据库,我会更新appsettings.json文件中的连接字符串并运行命令 如果我无法从本地机器访问生产,会发生什么情况?如何将数据库更新为最新的迁移 如果我记得使用实体框架(不是.NETCore)的话。当我部署新版本的.net应用程序时,它会尝试自动更新数据库。此功能是否仍存在于.NET core中?是,您可以运行 dbContext

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

dotnetef数据库更新-v

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

如果我无法从本地机器访问生产,会发生什么情况?如何将数据库更新为最新的迁移

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

是,您可以运行

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

另一种方法是作为部署的一部分运行迁移操作。这取决于您使用什么方法进行部署,但例如,如果您使用CI服务器,您将能够运行

dotnet ef database update
在复制新代码之后,但在启动应用程序备份之前