你能指示 EF 忽略已经存在的表吗

Can you instruct EF to ignore tables that already exist

我的应用程序有一个使用 Autofac 注入的上下文。我也有在同一个数据库上创建和维护自己的上下文的插件。我现在将其全部内联,以便插件仅使用主上下文。

我现在面临的问题是因为表已经存在于数据库中,我不能update-database因为它说PluginTable已经存在于数据库中。我无法执行 add-migration 然后删除 Up / Down 条目,因为插件不在同一个项目中。

注意:我认为这只是一个问题,因为表已经存在,所以我需要更新当前的迁移条目,这样它就不会尝试重新创建表。

注意:我考虑过重新构建迁移文件,但再次出现同样的问题,因为添加迁移不起作用。

我不知道 post 的什么代码对此有帮助,但我只是想知道我们是否可以告诉 ef 忽略其创建过程中已经存在的表(这听起来很愚蠢,因为我输入它,但我不确定还能做什么)。

编辑:也许我应该问的问题是如何让 add-migration 注意到其他项目,这样我就可以进行空白添加迁移并使迁移文件保持最新

不确定您所说的无法添加迁移是什么意思,但是如果您需要 运行 迁移以建立基线:

Add-Migration MyBaseline –IgnoreChanges 

https://msdn.microsoft.com/en-us/data/dn579398.aspx?f=255&MSPPError=-2147217396#option1