语言

ChangeTracker.Clear 方法

定义

停止跟踪所有当前跟踪的实体。

public virtual void Clear();
abstract member Clear : unit -> unit
override this.Clear : unit -> unit
Public Overridable Sub Clear ()

注解

DbContext 设计为具有较短的生存期,其中为每个工作单元创建新实例。 这种方式意味着当上下文在每个工作单元结束时释放时,将丢弃所有跟踪实体。 但是,使用此方法清除所有跟踪的实体在创建新上下文实例并不实际的情况下可能很有用。

此方法应始终优先于分离每个跟踪实体。 分离实体的过程很慢,可能会产生副作用。 此方法在从上下文中清除所有跟踪的实体时效率更高。

请注意,此方法不会生成 StateChanged 事件,因为实体不会单独分离。

有关详细信息和示例,请参阅 EF Core 更改跟踪 。

适用于