在ObjectStateEntry.Delete方法
的定义中MSDN说:
"Marks an entity as deleted."
但这是否意味着它首先将其删除,然后才将其标记为DELETED? 或者它首先标记它然后它从Db中删除条目?
答案 0 :(得分:2)
ObjectStateManager将有关您所做更改的所有信息收集到实体中。 因此,当您调用myContext.Delete(myEntity)时,您的实体将在Objectstatemanger中标记为已删除。但此时它不会被删除。
当你调用myContext.SaveChanges();
时,它将被删除答案 1 :(得分:0)
仅在调用Context.SaveChanges()方法时才应用对DB的更改。 因此,仅在EF实体缓存中标记为“已删除”的实体。