5

EntityModel使用. 4.3_NuGet

现在我想改变我的EntityObject.State,但它找不到.Entry()方法。

当前状态为Deleted

这就是我想要做的:

someObjectContext.Entry(someEntityObject).State = EntityState.Unchanged;

添加了对 EntityFramework 和 EntityFramework.Extended 的引用。

那么,我错过了什么?

编辑

我的NuGet输出:

PM> Install-Package EntityFramework -Version 4.3.1
'EntityFramework 4.3.1' already installed.
Data already has a reference to 'EntityFramework 4.3.1'.
4

1 回答 1

15

您正在使用ObjectContext,它没有该Entry方法。据我所知,您必须使用EF 4.3 4.1(更正感谢 Slauma)中添加的附加方法DbContext的包装器- 还有一种方法可以在需要时从中提取:ObjectContextObjectContextDbContext

ObjectContext context = ((IObjectContextAdapter)yourDbContext).ObjectContext;

这是另一种方式:

DbContext context = new DbContext(yourObjectContext, true); //or false, depends what you want

这是构造函数的链接

于 2012-06-14T12:13:14.167 回答