只有第一个更新数据库正在工作(创建数据库),然后更新数据库什么都不做

时间:2019-05-20 16:54:08

标签: asp.net-core entity-framework-core ef-migrations

这是VS 2019中的EF Core,ASP.NET Core 3 Preview 5项目。所有项目都适用于

PM>Add-Migration Initial
PM>Update-Database

基于MyDbContext和Startup.cs和appsettings.json连接字符串正确创建的SQL Server数据库。 (所以一切就绪)

但是,如果我更改MyDbContext或添加新的DbSet或向现有实体添加属性并运行Update-Database,则什么都不会发生。没有错误消息。

到目前为止,我已经尝试过:

  • 通过在文件系统中手动在VS 2019中彻底清理项目
  • 退出VS,启动VS
  • 从SQL地面零开始删除项目中的迁移文件夹和DROP SQL Server中的数据库

1 个答案:

答案 0 :(得分:2)

Migrations背后的想法是更新数据库架构,并使它与您的应用程序数据模型(实体)保持同步,这样您就无需删除数据库并再次重新创建数据库(这可以导致数据丢失)。

因此,无论何时对Models / DbContext进行任何更改,都需要先Add-Migration,然后再进行Update-Database


有关迁移read this的更多信息。