ChangeTracker.Clear 方法

定义

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

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

注解

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

此方法应始终优先于分离每个跟踪实体。 分离实体是一个缓慢的过程,可能会有副作用。 此方法在从上下文中清除所有跟踪实体方面要高效得多。

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

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

适用于