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 。