DbSet<TEntity>.AttachRange 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
AttachRange(IEnumerable<TEntity>) |
默认使用 Unchanged 状态开始跟踪给定实体和可从给定实体访问的条目,但有关将使用不同的状态的情况,请参阅下文。 |
AttachRange(TEntity[]) |
默认使用 Unchanged 状态开始跟踪给定实体和可从给定实体访问的条目,但有关将使用不同的状态的情况,请参阅下文。 |
AttachRange(IEnumerable<TEntity>)
默认使用 Unchanged 状态开始跟踪给定实体和可从给定实体访问的条目,但有关将使用不同的状态的情况,请参阅下文。
public virtual void AttachRange (System.Collections.Generic.IEnumerable<TEntity> entities);
abstract member AttachRange : seq<'Entity (requires 'Entity : null)> -> unit
override this.AttachRange : seq<'Entity (requires 'Entity : null)> -> unit
Public Overridable Sub AttachRange (entities As IEnumerable(Of TEntity))
参数
- entities
- IEnumerable<TEntity>
要附加的实体。
注解
通常,在调用 之前 SaveChanges() 不会执行数据库交互。
将执行导航属性的递归搜索,以查找上下文尚未跟踪的可访问实体。 上下文将跟踪找到的所有实体。
对于具有生成键的实体类型,如果实体设置了其主键值,则将在 状态中 Unchanged 跟踪它。 如果未设置主键值,则将在 状态中 Added 跟踪它。 这有助于确保仅插入新实体。 如果主键属性设置为属性类型的 CLR 默认值以外的任何值,则认为实体设置了主键值。
对于没有生成键的实体类型,状态集始终 Unchanged为 。
使用 State 仅设置单个实体的状态。
有关详细信息和示例,请参阅 EF Core 更改跟踪和使用 AddRange、UpdateRange、AttachRange 和 RemoveRange。
适用于
AttachRange(TEntity[])
默认使用 Unchanged 状态开始跟踪给定实体和可从给定实体访问的条目,但有关将使用不同的状态的情况,请参阅下文。
public virtual void AttachRange (params TEntity[] entities);
abstract member AttachRange : 'Entity[] -> unit
override this.AttachRange : 'Entity[] -> unit
Public Overridable Sub AttachRange (ParamArray entities As TEntity())
参数
- entities
- TEntity[]
要附加的实体。
注解
通常,在调用 之前 SaveChanges() 不会执行数据库交互。
将执行导航属性的递归搜索,以查找上下文尚未跟踪的可访问实体。 上下文将跟踪找到的所有实体。
对于具有生成键的实体类型,如果实体设置了其主键值,则将在 状态中 Unchanged 跟踪它。 如果未设置主键值,则将在 状态中 Added 跟踪它。 这有助于确保仅插入新实体。 如果主键属性设置为属性类型的 CLR 默认值以外的任何值,则认为实体设置了主键值。
对于没有生成键的实体类型,状态集始终 Unchanged为 。
使用 State 仅设置单个实体的状态。
有关详细信息和示例,请参阅 EF Core 更改跟踪和使用 AddRange、UpdateRange、AttachRange 和 RemoveRange。