是否可以选择将实体框架实体的哪个部分持久化回数据库?
ObjectContext.SaveChanges()会保存所有内容,但如果我只想保留某些项目,该怎么做呢?
答案 0 :(得分:0)
使用多个上下文来跟踪不同的数据集:
以下psuedo代码可以帮助您。 Cleary有更多的方法而不仅仅是一个。
using(ObjectContext context1 = new ObjectContext())
{
using(ObjectContext context2 = new ObjectContext())
{
//Do Stuff
//Now only a portion of your changes are saved to the database
context2.SaveChanges();
}
}
答案 1 :(得分:0)
您需要从ObjectContext中分离不希望持久化的对象。您可以通过将其EntityState分配给Detached来执行此操作,如下所示:
context.Products.First().State = EntityState.Detached
或
context.Detach(Products.First());