实体框架6 - 更新edmx时实体类被删除,为什么?我该怎么做才能阻止它呢?

ash*_*ton 4 .net c# entity-framework

使用EDMX Designer更新实体框架图时,有时模型.TT文件下的实体会被删除,然后我必须撤消源代码管理中的更改.

这是什么原因,我该怎么做才能阻止这种情况发生?

Fab*_*Luz 7

一年前我遇到了同样的问题.据我所知,当你的数据库中有一些奇怪/冗余的关系时,会发生这样的错误.实体框架在更新类时失去了理智.

删除您的模型,并在没有您创建的最后一个表的情况下创建它.如果这不起作用,请尝试使用几个表重新创建...继续按表更新表,直到找到导致问题的表.

请记住,数据库优先模型(使用EDMX)"实际上已弃用",EF 7不再支持它.更多信息:http://blogs.msdn.com/b/adonet/archive/2014/10/21/ef7-what-does-code-first-only-really-mean.aspx

希望能帮助到你!

  • 这实际上有效.我有一个同事添加的表/类的问题.删除了那张桌子.更新是否有效.干杯.另外,因为我无法控制,所以先使用DB-first.我将在个人和未来的项目中使用代码优先.干杯. (2认同)