2011-06-15 69 views
7

看似简单的事情,让我完全冻结,我无法找到这个净任何东西:实体框架:删除SQL表不从模型中移除

我有一个共同的多对多的关系在我的分贝:

表一+ TableTwo + LinkingTable 2列:TableOneID和TableTwoID

我删除了LinkingTable并试图更新数据库从模型。现在我得到错误“错误11007:实体类型”链接表“未映射。”

有人知道这个EF想要什么吗?谢谢!

回答

11

右键单击解决方案资源管理器中的模型。选择“打开方式...”在对话框中选择“XML(文本)编辑器”。从模型的xml中删除LinkingTable的所有节点和引用(或其真实名称)。关闭当前打开的所有模型文件(我知道,很奇怪)。建立该项目。再次打开模型。现在一切都应该没问题。

+0

它的工作,谢谢!我是EF新手,我从prev程序员那里继承了这个模型。为什么会发生? – Kizz 2011-06-15 18:16:41

+1

我不知道所有实体框架的“向导”的确切内容以及多对多关系中的内容。但我从经验中知道,解决多对多问题的唯一方法是手动并仔细地编辑模型的xml。至少现在,直到MS修复这些东西。因此,如果“删除”操作没有得到传播,只需手动删除对该表的所有引用并重新加载模型。类似的东西:) – MTG 2011-06-15 18:23:25

+0

感谢这一点 - 我有完全相同的问题。手动更正XML似乎是最简单的解决方案。 – GarethOwen 2012-05-02 14:37:19

1

打开模型浏览器, 在实体类型中,选择要删除的表格, 它将删除与表格的所有关联。

它对我很好。