根据MS docs:http://msdn.microsoft.com/en-us/library/system.data.entity.dbcontext(v=vs.103),应在EntityFramework程序集内的命名空间System.Data.Entity中定义DbContext。
我在项目中都引用了(加上System.Data.Entity),但是无法创建DbContext的实例。当我输入DbContext时,没有智能感知。但是在等式的右边,我确实看到了智能感知中的DbContext。
DbContext test = new DbContext();
但是,当我构建项目时,我收到此错误:
找不到类型或命名空间“DbContext”。
如果我添加完全限定名称,我会收到此错误:
命名空间中不存在类型或命名空间“DbContext” 'System.Data.Entity的'。
我正在使用.NET 4.5,VS.NET 2013 Premium和EF 5。
任何想法我做错了什么?
答案 0 :(得分:2)
你说你不使用nuget?有什么特别的理由吗?因为通过NuGet安装EF是您快速顺利地启动和运行它的最佳选择。要安装EF 5,只需将其输入到Package Manager控制台(将您希望将其安装到目标中的项目)Install-Package EntityFramework -Version 5.0.0
。我也使用.Net 4.5和VS Premium 2013,并且我已经验证使用NuGet安装EF 5或EF 6可以顺利运行。
否则,SO上有很多其他帖子可以解决这个问题。 Here可能对您有所帮助。如果您不使用NuGet,最常见的问题似乎是缺少对System.Data.Entity
汇编或EntityFramework.dll
答案 1 :(得分:-1)
我发现了这个问题。我试图将其添加到的特定文件位于不同的项目中。 DbContext在所有引用存在的项目中都能正常工作。