共用方式為


DbSet<TEntity>.AttachRange 方法

定義

多載

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

適用於