2

我创建了数据库的模式对VS Mac和使用终端创建迁移:与迁移CLI在VS的Mac(DOTNET的酷睿2)更新数据库

dotnet ef migrations add IntitialMigration 

然后,我更新了我的数据库:

dotnet ef database update 

但之后我改变了我的模型,我创建了另一个迁移:

dotnet ef migrations add SecondMigration 

并试图updat E中的数据库:

dotnet ef database update SecondMigration 

我收到以下错误:

There is already an object named 'Emails' in the database.

我已经搜查,我发现了一个可能的解决方案:

Add-Migration SecondMigration -IgnoreChanges 

但在PMC在Windows这只作品。我使用VS for Mac,所有命令都在终端上输入。更改模型后,有人知道如何使用Migrations更新数据库吗?

回答

0

我找到了解决方案。看来,在VS 2017 for Windows上,当您添加迁移时,它会自动添加到解决方案中。但是,在VS for Mac上,这并没有发生。您需要手动将每个新迁移添加到解决方案。我创建了InitialMigration迁移并将其更新到数据库。出于某种原因,我不知道为什么,我从解决方案中删除了迁移,并创建了新的SecondMigration迁移。这就是InitialMigration上的所有表都在SecondMigration上的原因。