我正在开发一个围绕EF的项目。 我将项目的核心层分成不同的项目。
不幸的是我经常收到正在发生的错误,因为我在项目中缺少对EntityFramework.SqlServer.dll的引用。
将.dll文件添加到我的构建文件夹修复了这个问题,但是我想通过代码中的“using”语句来解决它,但是我不能这样做,因为我在项目中缺少对Entity Framework的引用。
我想知道如何添加一个?
* PS如果我在“添加引用”面板中搜索EntityFramework,我不会选择EF作为选项。
**我总是可以用NuGet安装它,但这不是多余的,因为我已经安装了它?
答案 0 :(得分:4)
我在DAL使用EF的N层解决方案上遇到了同样的问题。
我通过在Web项目中添加对EntityFramework.SqlServer.dll的引用来解决它。
转到参考 - >在对话框中添加参考 - > ,选择 COM ,然后按浏览。 然后转到使用EF的项目并转到存储EF引用的项目bin文件夹。 选择 EntityFramework.SqlServer.dll 并添加它。
答案 1 :(得分:1)
您也可以通过右键单击您的项目-> Manage Nuget Packages,然后搜索“ EntityFramework”来使用Nuget。安装https://drafts.csswg.org/css-multicol-1/#cc
它将同时添加EntityFramework和EntityFramework.SqlServer程序包。
答案 2 :(得分:0)
我遇到了类似的情况。我解决的方法如下: 转到引用->程序集引用下,选择浏览并转到当前项目的packages文件夹,然后浏览到我要针对我的应用程序定位的特定版本的entityframework.dll和entityframework.sqlserver.dll。这样就解决了构建问题。
答案 3 :(得分:0)
我也遇到了这个问题。我正在通过单独的数据访问程序集访问EF,当我从SAME项目中的测试控制台应用程序调用EF时,EF正常工作,但是尝试通过我的DAL对象的实例从主应用程序访问EF时出现错误
我在主应用程序中添加了2个引用,但仍然出现错误。
然后我意识到实际的问题是什么。我需要将DAL项目中App.config中的EF配置部分介绍到主应用程序中。
完成此操作后,一切都会正常运行。 基本上,您需要复制connectionStrings和EntityFramework部分的内容。
否则,EF不知道如何连接自身。
当然,如果您在DAL内部的代码中创建EF连接,那么您可能不会遇到此问题。