在多对多关系中删除具有EF的实体

时间:2018-03-22 18:12:39

标签: entity-framework many-to-many

我有一个带有三个表的DbContext。项目和订单之间存在多对多连接。

public virtual DbSet<Item> Items { get; set; }
public virtual DbSet<Order> Orders { get; set; }
public virtual DbSet<ItemOrder> ItemOrders { get; set; }

我也有一种从ItemOrders中删除记录的方法。

public void RemoveItemFromOrder(ItemOrder itemOrder) 
{     
    itemOrder.Item.Orders.Remove(itemOrder);    
    context.ItemOrders.Remove(itemOrder);   
    context.SaveChanges();  
}

(此代码由之前的开发人员编写)。 我需要理解,为什么我不能在上下文中从ItemOrders中删除itemorder?为什么我还需要从连接项目中的(项目)订单集合中删除itemOrder?

0 个答案:

没有答案