次の方法で共有


DbSet<TEntity>.Attach(TEntity) メソッド

定義

既定では状態を使用して、指定されたエンティティと特定のエンティティから到達可能なエントリの 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 、1 つのエンティティのみの状態を設定します。

詳細と例については、「 EF Core の変更の追跡 」を参照してください。

適用対象