我注意到,当我交换暂存插槽和生产插槽时,EF迁移不会在生产插槽上运行。
我有一个上下文/db用于ASP.NET标识,另一个用于我的应用程序数据。ASP.NET标识上下文使用CreateIfNotExist初始化器,我可以看到在生产环境中正确地创建了相应的DB。然而,我的应用程序上下文使用迁移附带的MigrateDatabaseToLatestVersion初始化器,当我在Azure上交换环境时,它看起来不会自动触发。
在Visual Studio中使用Web Deploy时,有一个复选框“Execute Code First Migrations”,但正如预期的那样,它们只在我部署应用程序的stating上运行。我也需要在交换后在生产环境中执行迁移。我该怎么处理呢?
发布于 2015-08-14 21:19:54
请看这个MSDN Blog Post,它描述了如何在Azure上使用代码优先迁移部署。“执行代码优先迁移”复选框操作web.config文件以更新数据库。但是,当您交换后台文件时,不会交换web.config。
您应该使用“App_Start代码”解决方案,然后迁移也将在生产插槽上运行。
https://stackoverflow.com/questions/30736385
复制相似问题