我首先使用EF6代码,并且禁用了自动迁移。在本地PC上一切都很好,但是当我从Visual Studio发布到Azure时,出现错误消息,告诉我架构更新正在终止,因为可能会发生数据丢失。
我知道我正在运行的更改将意味着将发生数据丢失,但这很好。但是我找不到如何禁用此检查的功能。我在其他地方看到过与数据库项目有关的帖子-但无法先找到如何针对EF6代码进行操作。
确切的错误消息如下。非常感谢您的帮助。
错误SQL72014:.Net SqlClient数据提供程序:检测到消息50000,级别16,状态127,行10。模式更新正在终止,因为可能会发生数据丢失。
错误SQL72045:脚本执行错误。
执行的脚本:
FROM [dbo].[Shift])
RAISERROR (N'Rows were detected. The schema update is terminating because data loss might occur.', 16, 127)
WITH NOWAIT;
答案 0 :(得分:0)
得到相同的错误。我正在从本地更新AzureDB。我在发布对话框中选中了命中框更新数据库。但是您必须强制执行此操作(删除,重命名内容)。
在应用程序启动时我迁移了数据库:
public Configuration()
{
AutomaticMigrationsEnabled = true;
AutomaticMigrationDataLossAllowed = true;
ContextKey = "Vlokk.Api.Models.ApplicationDbContext";
}
并且在部署设置中禁用更新数据库。