DbSet<TEntity>.Attach(TEntity) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
根據預設,會使用 Unchanged 狀態開始追蹤可從指定實體觸達的指定實體和專案,但如需使用不同狀態的情況,請參閱下方。
public virtual Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry<TEntity> Attach (TEntity entity);
abstract member Attach : 'Entity -> Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry<'Entity (requires 'Entity : null)>
override this.Attach : 'Entity -> Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry<'Entity (requires 'Entity : null)>
Public Overridable Function Attach (entity As TEntity) As EntityEntry(Of TEntity)
參數
- entity
- TEntity
要附加的實體。
傳回
EntityEntry實體的 。 專案可讓您存取實體的變更追蹤資訊和作業。
備註
一般而言,在呼叫 之前 SaveChanges() ,不會執行任何資料庫互動。
將會執行導覽屬性的遞迴搜尋,以尋找內容尚未追蹤的可連線實體。 內容會追蹤找到的所有實體。
如果是具有所產生索引鍵的實體類型,如果實體已設定其主鍵值,則會在狀態中 Unchanged 追蹤。 如果未設定主鍵值,則會在 狀態中 Added 追蹤它。 這有助於確保只會插入新的實體。 如果主鍵屬性設定為屬性類型 CLR 預設值以外的任何專案,實體就會將其主鍵值設定為 。
對於沒有產生索引鍵的實體類型,狀態集一律 Unchanged 為 。
使用 State 僅設定單一實體的狀態。
如需詳細資訊和範例,請參閱 EF Core 變更追蹤 。