我正在使用Visual Studio 2012and创建一个 Web 应用程序Framework 4.5,我正在使用MVC 4并且遇到了一个问题。
我需要使用DbContext ,但在我的项目中找不到这意味着我添加了 System.Data.Entity 并且它仍然给出错误
找不到类型或命名空间名称“DbContext”(您是否缺少 using 指令或程序集引用?)
我该如何解决这个...?
我正在使用Visual Studio 2012and创建一个 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,单击管理,然后选中新解决方案的框。新项目现在应该可以正确构建。