保持EntityObject不会更改为已添加状态(实体框架)

时间:2010-03-23 12:43:55

标签: entity-framework state

愚蠢的问题可能,但仍然。

public class Foo : EntityObject 
{
    public Bar Bar { get; set; } // navigation property
}
public class Bar : EntityObject
{
    // whatever
}

// code
var myFoo = Foo.Create(); // detached state after this line
var myBar = LoadMyBarFromDatabase(); // Bar comes from DB
myFoo.Bar = myBar; // myFoo.EntityState changes to 'Added'

我不需要将myFoo添加到数据库中。它必须保持独立。我只需要它作为Bar的假容器一段时间了。没别了。

思想?

(目前我只考虑添加新界面IFoo并在FakeFoo班级中实施,而不是EntityObject

1 个答案:

答案 0 :(得分:0)

好吧,似乎没有好的方法可以做到这一点。我最终覆盖了上下文中的SaveChanges方法并过滤掉了我创建的垃圾对象。实际上没有找到任何其他内容,因为只要将对象添加到某个关系中,就会将其添加到Added状态的上下文中。