我正在使用Visual Studio 2012
and创建一个 Web 应用程序Framework 4.5
,我正在使用MVC 4
并且遇到了一个问题。
我需要使用DbContext
,但在我的项目中找不到这意味着我添加了 System.Data.Entity 并且它仍然给出错误
找不到类型或命名空间名称“DbContext”(您是否缺少 using 指令或程序集引用?)
我该如何解决这个...?
我正在使用Visual Studio 2012
and创建一个 Web 应用程序Framework 4.5
,我正在使用MVC 4
并且遇到了一个问题。
我需要使用DbContext
,但在我的项目中找不到这意味着我添加了 System.Data.Entity 并且它仍然给出错误
找不到类型或命名空间名称“DbContext”(您是否缺少 using 指令或程序集引用?)
我该如何解决这个...?
生活DbContext
在EntityFramework.dll
. 请参阅此以供参考
您可以通过在 PMC 中键入此命令从 nuget 获取它
Install-Package EntityFramework -Version 5.0.0
您可以通过VS中的工具 -> 库包管理器 -> 包管理器控制台进入 PMC
除了接受的答案之外,这可能会帮助处于尚未提及的情况的人们:
当我在 Visual Studio 2012 的现有解决方案中创建一个新的 mvc4 项目时,我出现了这个问题。解决方案已经包含一个工作 mvc4 项目,但是当我创建第二个项目时它找不到 System.Data.Entity 包(包括数据库上下文)。install-package 命令在这种情况下并不能解决问题,因为整体解决方案已经安装了包:
PM> Install-Package EntityFramework
'EntityFramework 6.0.1' already installed.
问题是 EntityFramework 包不会自动安装在新项目中,您必须手动添加它。去:
Tools -> Library Package Manager -> "Manage NuGet Packages for Solution..."
在右上角的框中搜索 EntityFramework,单击管理,然后选中新解决方案的框。新项目现在应该可以正确构建。
您可以通过以下步骤做到这一点:
在解决方案资源管理器中右键单击您的项目。
选择添加参考...
查找System.Data.Entity.dll文件(或EntityFramework.dll)并将它们添加到您的项目中。
如果您安装了 NuGet,您也可以通过 NuGet 完成同样的事情:
在解决方案资源管理器中右键单击您的项目。
选择管理 NuGet 包...
搜索EntityFramework包。
单击安装将其添加到您现有的项目中。
在您成功地将这些添加到您的应用程序后,您只需要在您使用 DbContext 和 DbSet 对象的页面中添加一条 using 语句:
using System.Data.Entity;
我也遇到了这个问题,直到我从菜单 -> 项目 -> 管理 Nuget 包安装了 EntityFramework...
DbContext 是 EntityFramework.dll 的一部分,而不是 System.Data.Entity。
它是在 EF 4.1 中引入的。您可以使用 Visual Studio 2012 安装适当的 NuGet 包。例如,右键单击项目并选择“Manange NuGet 包”并找到适当的 EF 版本并安装它。
当我在Visual Studio 2012
. 解决方案已经包含一个工作mvc4
项目,但是当我创建第二个项目时它找不到System.Data.Entity package
(包括 DbContext)。该install-package
命令无法解决这种情况下的问题,因为整体解决方案已经安装了包:
PM> Install-Package EntityFramework
'EntityFramework 6.0.1' already installed.
问题是 EntityFramework 包不会自动安装在新项目中,您必须手动添加它。去:
Tools -> Library Package Manager -> "Manage NuGet Packages for Solution..."
在右上角的框中搜索 EntityFramework,单击管理,然后选中新解决方案的框。新项目现在应该可以正确构建。