在通过nuget下载EF6并尝试运行我的项目后,它返回以下错误:
没有为ADO找到实体框架提供程序。NET提供程序,使用不变名称'System.Data.SqlClient'。确保提供者在应用程序配置文件的“entityFramework”部分中注册。更多信息请参见http://go.microsoft.com/fwlink/?LinkId=260882。
在通过nuget下载EF6并尝试运行我的项目后,它返回以下错误:
没有为ADO找到实体框架提供程序。NET提供程序,使用不变名称'System.Data.SqlClient'。确保提供者在应用程序配置文件的“entityFramework”部分中注册。更多信息请参见http://go.microsoft.com/fwlink/?LinkId=260882。
当前回答
我几乎尝试了以上所有方法,但都没有奏效。
只有当我在默认项目EntityFramework和EntityFramework中设置引用的dll时。SqlServer属性从本地复制到True它开始工作了!
其他回答
我刚刚遇到了同样的问题,它看起来像EntityFramework,虽然从NuGet包管理器安装没有正确安装在项目中。
我设法通过在包管理器控制台运行以下命令来修复它:
PM> Install-Package EntityFramework
我几乎尝试了以上所有方法,但都没有奏效。
只有当我在默认项目EntityFramework和EntityFramework中设置引用的dll时。SqlServer属性从本地复制到True它开始工作了!
今天在处理一组web服务时遇到了这个问题,每个web服务都在不同的项目中,而一个单独的项目包含其中一些服务的集成测试。
我已经在EF5中使用这个设置有一段时间了,不需要包括集成测试项目中对EF的引用。
现在,在升级到EF6之后,似乎我也需要在集成测试项目中包含对EF6的引用,即使它没有在那里使用(正如user3004275上面指出的那样)。
说明你也面临着同样的问题:
直接调用EF(连接到DB,获取数据等)工作正常,只要它们是从引用EF6的项目发起的。 通过已发布的服务接口调用服务工作正常;也就是说,在服务中“内部”不存在缺失引用。 从服务外部的项目直接调用服务项目中的公共方法,将导致此错误,即使EF没有在该项目中使用;仅在被调用的项目内部
第三点是让我困惑了一段时间,我仍然不确定为什么需要这个。在我的集成测试项目中添加ref到EF6,在任何情况下都解决了这个问题…
我刚刚用Nuget重新安装了实体框架。 按照下面链接上的说明操作: http://robsneuron.blogspot.in/2013/11/entity-framework-upgrade-to-6.html
我想问题会解决的。
复制EntityFramework.SqlServer.dll即可 进入bin文件夹