如何使用Entity Framework将对象附加到现有属性

时间:2012-01-27 21:36:19

标签: c# entity-framework-4

我有一个属性,其中包含模型中实体的列表。我想在此列表中添加一个项目,但是当我这样做时,它会被添加为已分离。如何将此对象添加为附加?

using (var db = new fsEntities())
{
   var list = db.Products.Where(x => x.ID == 1).ToList();
   var p = new Product { Description = "New Item", Amount = 14};
   list.Add(p);   //the new item EntityState is detached
}

我知道我可以执行此操作db.AddToProducts(p),但在我的方案中,我想将对象添加到现有属性中,并附加EntityState,然后稍后执行SaveChanges必要的。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

您可以attach该实体。这将添加到Unchanged州的上下文中。

using (var db = new fsEntities())
{
   var list = db.Products.Where(x => x.ID == 1).ToList();
   var p = new Product { Description = "New Item", Amount = 14};

   db.Attach(p);

   list.Add(p);   //the new item EntityState is detached
}