每当我从数据库更新EF 6模型时(添加一个表),我就会得到上面的错误。
这不是什么新问题。我阅读了这里提出的所有建议(cannot convert from 'System.Data.Objects.ObjectParameter' to 'System.Data.Entity.Core.Objects.ObjectParameter')。
答案说要取代
using System.Data.Objects;
using System.Data.Objects.DataClasses;使用
using System.Data.Entity.Core.Objects;
using System.Data.Entity.Core.Objects.DataClasses;当我从数据库更新模型并编译时,违规的名称空间(System.Data.Objects和System.Data.Objects.DataClasses)马上返回,生成一个编译错误,添加的表从模型中消失!。
因此,我发现自己陷入了添加表、获得编译错误、替换已格式化的行以及丢失表的恶性循环。冲洗,重复。经过5-6的尝试,当我幸运的时候,添加的表格就会出现在模型中。
因此,我尝试重新安装实体框架(6.2.0),但这并不能解决问题。
有人提到了“版本冲突”。除了卸载和重新安装我已经尝试过多次的软件包之外,还有什么方法来检查它呢?
发布于 2018-10-09 14:56:58
你已经三个月没提问题了。希望你现在解决了你的问题。我刚刚遇到了同样的问题,在实体框架中更新模板文件为我解决了这个问题。希望我的回答能帮助任何人来回答这个问题!
要更新模板文件:
(YourModelName).Context.ttusing System.Data.Objects在文件中找到相应的行 using System.Data.Objects;
using System.Data.Objects.DataClasses;使用
using System.Data.Entity.Core.Objects;
using System.Data.Entity.Core.Objects.DataClasses;从现在开始,每次更新实体(表或存储过程)时,都应该使用语句生成正确的语句。
https://stackoverflow.com/questions/50830858
复制相似问题