【发布时间】:2015-11-19 12:49:35
【问题描述】:
我的应用程序有一个使用 Autofac 注入的上下文。我也有在同一个数据库上创建和维护自己的上下文的插件。我现在将它们全部内联,以便插件只使用主要上下文。
我现在面临的问题是因为表已经存在于数据库中,我不能update-database 因为它说PluginTable 已经存在于数据库中。我不能执行 add-migration 然后删除 Up / Down 条目,因为插件不在同一个项目中。
注意:我认为这只是一个问题,因为表已经存在,所以我需要更新当前的迁移条目,这样它就不会尝试重新创建表。
注意:我考虑过重新构建迁移文件,但同样的问题会发生,因为添加迁移不起作用。
我不知道发布什么代码会对此有所帮助,但我只是想知道我们是否可以告诉 ef 忽略其创建过程中已经存在的表(这听起来很愚蠢,因为我键入它但我不知道还能做什么)。
编辑:也许我应该问的问题是如何让add-migration 记录其他项目,这样我就可以进行空白添加迁移并更新迁移文件
【问题讨论】:
-
Afaik 你不能在 Entity Framework 的同一个项目中拥有代码优先和数据库优先。你不能在单独的项目中做吗?
-
您的意思是在每个插件上也启用迁移并专门添加迁移吗?
标签: c# ef-code-first entity-framework-6 entity entity-framework-migrations