gpt4 book ai didi

entity-framework - 谁能发现为什么我在测试 EF 5 beta 时不断收到此错误

转载 作者:行者123 更新时间:2023-12-03 09:02:20 27 4
gpt4 key购买 nike

安装了 Visual Studio 11 beta 来测试 EF 5 beta 但一直遇到这个错误。

Method not found: 'Void System.Data.Objects.ObjectContextOptions.set_UseConsistentNullReferenceBehavior(Boolean)'.



项目是一个新的空白 MVC3 应用程序,下面是一些说明错误如何发生的代码。
public class Blog
{
public int Id { get; set; }
public string Name { get; set; }
}

public class EFDbContext : DbContext
{
public DbSet<Blog> Blogs { get; set; }
}

public class HomeController : Controller
{
protected EFDbContext Db = new EFDbContext();

public ActionResult Index()
{
Blog B = new Blog();
B.Name = "Test";
Db.Blogs.Add(B);
Db.SaveChanges();
return View();
}
}

在谷歌上寻找错误但没有出现,我不太确定错误指的是什么。
我在下面添加了一段堆栈跟踪,以防万一。

[MissingMethodException: Method not found: 'Void System.Data.Objects.ObjectContextOptions.set_UseConsistentNullReferenceBehavior(Boolean)'.] System.Data.Entity.Internal.LazyInternalContext.InitializeContext() +0 System.Data.Entity.Internal.InternalContext.Initialize() +31
System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType) +39
System.Data.Entity.Internal.Linq.InternalSet1.Initialize() +137

System.Data.Entity.Internal.Linq.InternalSet
1.get_InternalContext() +38 System.Data.Entity.Internal.Linq.InternalSet1.ActOnSet(Action action, EntityState newState, Object entity, String methodName) +236

System.Data.Entity.Internal.Linq.InternalSet
1.Add(Object entity) +200 System.Data.Entity.DbSet`1.Add(TEntity entity) +72

最佳答案

看起来您正在使用 EF5 EntityFramework.dll,但随后安装了 .NET 4 而不是 .NET 4.5 运行。

如果您打算以 .NET 4.5 为目标,请确保在运行代码的机器上安装了 .NET 4.5。 VS11 为您安装 .NET 4.5,但您也可以在非开发机器上仅安装运行时。

如果您打算以 .NET 4 为目标,请确保您的项目设置为以 .NET 4 为目标,然后卸载并重新安装 EF5 NuGet 包。您必须卸载并重新安装,因为当项目重新定位时,NuGet 不会自动更改正在使用的程序集。

更新:

如果您仍然安装了 EF June CTP 或者无法正确卸载,您也可能会看到此异常。请在安装 VS11 之前尝试完全卸载 June CTP。如果您仍然看到问题,他们以管理员身份打开“开发人员命令提示符”并运行:

gacutil /u System.Data.Entity,Version=4.2.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089

如果这仍然失败,那么您可以尝试从 GAC 强制卸载:
gacutil /uf System.Data.Entity,Version=4.2.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089

关于entity-framework - 谁能发现为什么我在测试 EF 5 beta 时不断收到此错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9591929/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com