在运行时在Azure上迁移EF核心的快速提示

关于我的英孚核心2入门课程的一个问题是:

嗨,朱莉
谢谢你的课程。我有个问题。请您建议将代码首次迁移部署到生产数据库(Azure)的最佳做法是什么?我是说我创造了
ASP.NET使用代码优先迁移方法的核心MVC和EF.core应用程序。在部署到Azure之后。如果我在代码优先方法中更改任何模式,我如何在生产数据库中更新模式(而不丢失生产数据库中的数据)

我对一些我认为值得在课程讨论之外分享的想法的回应。(请注意,这只是高级别)

为了简单的解决,我使用的一个路径是在启动时调用database.migrate。VS发布工作流有一个选项,您可以在发布应用程序时选中该选项以应用迁移。您可以在MS文档中看到将aspnet核心应用程序部署到Azure

或者您可以在program.cs文件中进行编程,该文件将执行任何需要的迁移。我的A中有一个这样的例子2019年4月《MSDN杂志》文章.如果你需要更强壮的东西,然后,您可以用ef核心迁移生成脚本(可能是等量脚本),然后将它们包含在更新中,并使用可以应用这些脚本的工具。如果你使用红门工具,也许他们SQL更改自动化工具。另一种工具是像FlywayDB这样的迁移工具(飞行路线)或液体数据库。我用过带集装箱的飞机跑道。这是我最近在使用它的地方做的一个会议演讲:LY/30AHGAR

报名参加我的时事通讯所以你不要错过我的会议和多元化课程公告!

留下答复

您的电子邮件地址将不会发布。已标记必需字段*

此网站使用Akismet来减少垃圾邮件。了解如何处理评论数据.