如何使用实体框架将对象附加到现有属性

本文关键字:属性 对象 何使用 实体 框架 | 更新日期: 2023-09-27 18:21:46

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

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

我该怎么做?

如何使用实体框架将对象附加到现有属性

您可以附加实体。这将添加到具有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
}
相关文章: