使用特定的模型更新运行迁移

时间:2018-09-20 11:45:53

标签: asp.net asp.net-mvc entity-framework-6 ef-migrations

我正在使用Visual Studio 2017在ASP.Net MVC项目上进行工作。我想向我的一个模型中添加一个属性。在迁移并启动应用程序后,我收到了错误消息“已经有一个对象命名为数据库”。正如我在互联网上发现的那样,这是由于自动迁移引起的,如何更改我的迁移命令以避免这种情况。

dotnet ef migrations add GeoLocation -c ApplicationDb -o Data/Migrations/IdentityServer/ApplicationDb

1 个答案:

答案 0 :(得分:0)

我确实使用EF迁移,但我仍然不是粉丝。我更喜欢分别在SQL Server和C#中进行开发。您可以通过多种方式解决问题

打开Nu-Get软件包管理器控制台并为您的项目启用迁移

Enable-Migrations -ContextTypeName YourProject.Models.ApplicationDbContext -Force

您可以按以下方式迁移迁移文件夹中的所有内容(我已经显示了初始文件夹),无论是否带有“忽略更改”标志

add-migration Initial
Add-Migration Initial -IgnoreChanges

最后,强迫更改

Update-Database -Force

我总是复制“配置”文件的内容,因为当我不想使用该文件时,它会被覆盖。如果您不小心在迁移上运行数据时,它还可以向数据库中添加重复数据-因此您需要对此进行编码。

如果我真的很困惑,我只需删除所有迁移,截断迁移表,然后再次执行初始迁移即可。