我是Entity Framework的新手。我想在一个数据库上下文中删除多个实体。如果我使用DBContext.Remove(Object),那么它只从数据库中删除一个实体。请考虑我的代码:
CCSRequest objCCSRequest = DBContext.CCSRequest.Find(ccsRequestId);
if (objCCSRequest != null)
{
DBContext.CCSRequest.Remove(objCCSRequest);
DBContext.SaveChanges();
}
CCProducts objCCProducts = DBContext.CCProducts.Find(ccsRequestId);
if (objCCProducts != null)
{
DBContext.CCProducts.Remove(objCCProducts);
DBContext.SaveChanges();
}
我想在CCSRequest和CCProducts表中删除实体。 提前谢谢。
答案 0 :(得分:0)
在回答类似问题时,您需要循环执行此操作。请检查这个问题的答案:
how to delete multiple rows of data with linq to EF using DbContext
答案 1 :(得分:0)
如果你想要一个可以删除不同类型实体的循环,你可以使用它:
object[] entities = new object[]{
DBContext.CCSRequest.Find(ccsRequestId),
DBContext.CCProducts.Find(ccsRequestId)
};
foreach(object entity in entities)
{
DBContext.Entry(entity).State = EntityState.Deleted;
}