无法从“System.Data.Objects.ObjectParameter”转换为“System.Data.Entity.Core.Objects.ObjectParameter”

问题描述 投票:0回答:3

创建ADO.NET实体数据模型时,发生以下错误:

错误 66 参数 10:无法从 'System.Data.Objects.ObjectParameter' 转换为 'System.Data.Entity.Core.Objects.ObjectParameter' D:\Aziz\Aziz Project\Development\Running Development\Web\pos\pos \Model1.Context.cs 351 278 pos

如何解决这个错误?

c# asp.net-mvc entity-framework
3个回答
45
投票
using System.Data.Object;
using System.Data.Objects.DataClasses;

替换为:

using System.Data.Entity.Core.Objects;
using System.Data.Entity.Core.Objects.DataClasses;

11
投票

这是您在实体框架中可能遇到的最常见的编译时错误之一。当

时会发生这种情况
  1. 存在版本冲突,或者
  2. 使用命名空间。

默认情况下,在编译项目时,框架包含命名空间

using System.Data.Objects;

解决方案:

要解决此问题:

  • 如果版本冲突,请安装相应版本实体框架的包。
  • 如果版本相同,将上面的命名空间改为
    System.Data.Entity.Core.Objects

0
投票

在 Visual Studio 中展开文件 yourmodel.edmx

编辑.tt 文件:

Replace: <#@ include file="EF.Utility.CS.ttinclude"#><#@

<#@ include file="EF6.Utility.CS.ttinclude"#><#@

保存两个文件中的更改。检查一切是否正常。

如果没有,请打开模型并再次重新生成..

应该可以正常工作

© www.soinside.com 2019 - 2024. All rights reserved.