使用 EF Core 7.0.14 自动应用迁移

问题描述 投票:0回答:1

当我进行新的迁移(Add-Migration示例),然后我尝试获取所有迁移(Get-Migration)时,我发现“applied”字段是“True”,甚至没有使用(更新数据库),此外 当我尝试恢复所有迁移时(Update-Database 0),它告诉我它已经成功,当我使用Sql Server对象资源管理器检查时,我发现它确实成功了,但再次使用(Get-Migration) )我再次发现“applied”字段是“True”,并且让一切变得更糟,当我输入(Remove-Migration)时,它告诉我应用了最后一次迁移,您必须恢复它能够将其删除,并且我发现迁移已再次应用于数据库,知道什么可能导致此问题吗? (如果您发现我的英语不好,很抱歉,这不是我的主要语言:))

我尝试自行手动删除迁移和数据库,但没有产生任何结果,问题仍然存在。

c# .net entity-framework asp.net-core sql-server-2005
1个回答
0
投票

Get-migration
实际上检查“_efmigrationshistory”表。如果迁移已更新到数据库。迁移文件名将记录在这个“_efmigrationshistory”表中。



您之前可能更新过同名迁移文件。所以这个名字就被记录下来了。当您通过

Get-migration
检查时,它检测到相同的名称并返回为“applied:true”。

© www.soinside.com 2019 - 2024. All rights reserved.