每当我从数据库更新 EF 6 模型(添加表)时,都会收到上述错误。
这不是一个新问题。我阅读了此处列出的所有建议(无法从 'System.Data.Objects.ObjectParameter' 转换为 'System.Data.Entity.Core.Objects.ObjectParameter')。
答案说要更换
using System.Data.Objects;
using System.Data.Objects.DataClasses;
Run Code Online (Sandbox Code Playgroud)
和
using System.Data.Entity.Core.Objects;
using System.Data.Entity.Core.Objects.DataClasses;
Run Code Online (Sandbox Code Playgroud)
当我从数据库更新模型并编译时,有问题的名称空间(System.Data.Objects 和 System.Data.Objects.DataClasses)立即返回,生成编译错误,并且添加的表从模型中消失!
所以我发现自己陷入了添加表、编译错误、替换上述行并丢失表的恶性循环。冲洗,重复。经过 5-6 次尝试后,当我幸运时,添加的表格就会显示在模型中。
所以我尝试重新安装实体框架(6.2.0),但这并不能解决问题。
有人提到“版本冲突”。除了卸载并重新安装我已经尝试过多次的软件包之外,还有什么方法可以检查呢?
小智 7
自从您发布问题以来已经过去 3 个月了。希望您现在已经解决了您的问题。我刚刚遇到了同样的问题,更新实体框架中的模板文件为我解决了这个问题。希望我的回答能够帮助到任何提出这个问题的人!
要更新模板文件:
1. 展开 EDMX 文件
2. 双击(YourModelName).Context.tt
3. 通过按 Ctrl + F 并搜索来查找文件中的相应行using System.Data.Objects
4. 替换行
using System.Data.Objects;
using System.Data.Objects.DataClasses;
Run Code Online (Sandbox Code Playgroud)
和
using System.Data.Entity.Core.Objects;
using System.Data.Entity.Core.Objects.DataClasses;
Run Code Online (Sandbox Code Playgroud)
5.保存模板文件
从现在开始,每次更新实体(表或存储过程)时,它都应该生成正确的 using 语句
| 归档时间: |
|
| 查看次数: |
2367 次 |
| 最近记录: |