2016-11-11 188 views
0

我遇到了问题。不知何故,我的CodeFirst Migrations不再执行。 一切工作完美之前,但不是不工作了。我现在删除了所有的数据库并尝试重新部署它,但数据库不再被更新。代码优先迁移未执行

任何帮助?

(我在发布向导的复选框选中部署CF迁移)

回答

0

好的我找到了解决方案,所以我会在这里发布它,如果有其他人卡在这里。

代码优先迁移仅在请求完成后才执行。但是,不知何故,我的请求确实失败了,因为数据库结构不正确。所以我无法执行迁移请求,因此数据库未更新。所以我创建了一个简单的虚拟请求,它返回一个OK状态,并将其调用。这确实引发了迁移,现在每一项都起作用。 奇怪。

0

它是不工作的部署向导,因为你可能已经创建/选择其他连接。在已部署的连接字符串中可以看到两个连接字符串,这一点已得到证实。 第二个连接字符串也在EF部分引用 - 并在上下文中使用了第一个连接字符串 - public ApplicationDbContext() : base("DefaultConnection", throwIfV1Schema: false) {} 更改此处的名称将解决您的问题。

+0

我不知道我明白你的意思,你能详细说明一下吗?谢谢! – Tom

+0

好的,我找到了你提到的地方,但它的名称与我向导中的连接字符串名称相同,所以我只有一个连接字符串被定义。你有任何其他建议:)? – Tom

相关问题