实体框架4.1,找不到Load()方法?

Eri*_*ric 6 entity entity-framework entity-framework-4.1

好吧,我打算用锤子敲打我的键盘.我本周末决定和EF一起玩,我在4.0开始了一个项目.我发现4.1已经出来所以我下载并安装了包.

想象一下,当我在dbExtensions中使用Load()方法并且无法找到它时,我感到很惊讶.所以我添加了对安装程序创建的EntityFramework二进制文件的引用,从项目中删除System.Data.Entity引用,重建,它说

"类型'System.Data.Objects.ObjectContext'是在未引用的程序集中定义的.您必须添加对程序集'System.Data.Entity,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'的引用".

我试图重新生成我的模型,我尝试删除东西,我尝试通过使用直接引用4.1.什么都行不通.

我显然遗漏了一些基本的东西.我怎么告诉visual studio使用4.1框架?? !!

Asi*_*sif 28

我设法通过添加以下内容找到缺少的.Load()函数:

using System.Data.Entity;
Run Code Online (Sandbox Code Playgroud)

  • 这就是答案.Load是System.Data.Entity中的扩展方法. (3认同)

Lad*_*nka 4

Entity Framework 4.1 不是单独的版本。它仍然需要 Entity Framework 4.0 及其程序集,因此您无法从引用中删除 System.Data.Entity.dll。此外,EFv4.1 主要是关于新的 DbContext API,因此除非您要从 Entity 对象切换到 POCO,否则DbContext您不会通过引用 EntityFramework.dll 获得任何优势(除了Include上的强类型IQueryable)。