Entity Framework Code First Migration是否将其迁移数据存储在目标数据库和Migrations
文件夹以外的任何其他位置?
我有一个奇怪的场景,我已经添加了一个全新的.NET模型类,并将其添加到我的datacontext中 - 但由于某种原因,当我这样做时它没有被添加到生成的DbMigration中Add-Migrations
。好像EF认为它已经存在了。什么证实了我怀疑EF认为它已经存在,如果我在我的新.NET类中注释掉一些属性,生成的DbMigration会包含对DropColumn
的调用以删除这些属性!我不明白这一点,因为我已经完全删除了目标数据库,并删除了与该类有关的任何迁移文件。我不明白EF是如何知道那些属性的。
我在运行Update-Database
和Add-Migration
时尝试显式指定连接字符串,以确保它没有连接到某个地方的另一个数据库副本。尽管如此,这并没有什么不同。
EF是否在某处缓存数据?这些信息是否存在其他地方?
答案 0 :(得分:1)
我相信这就是答案; https://stackoverflow.com/a/25432088/1087768
基本上,我为使其重新运行而做的是删除数据库和迁移文件,并使用Add-Migration
重新创建迁移文件。然后Update-Database
应该按预期工作。