EntityState EntityState EntityState EntityState Enum

定義

エンティティ オブジェクトの状態です。The state of an entity object.

この列挙型には FlagsAttribute 属性があり、メンバー値ではビットごとの組み合わせを使用できます。

public enum class EntityState
[System.ComponentModel.DataAnnotations.BindableType(IsBindable=false)]
[System.Flags]
public enum EntityState
type EntityState = 
Public Enum EntityState
継承
属性

フィールド

Added Added Added Added 4

新しいオブジェクトがオブジェクト コンテキストに追加されています。SaveChanges() メソッドは呼び出されていません。The object is new, has been added to the object context, and the SaveChanges() method has not been called. 変更が保存されると、オブジェクトの状態は Unchanged に変更されます。After the changes are saved, the object state changes to Unchanged. Added 状態にあるオブジェクトは、ObjectStateEntry に元の値を保持していません。Objects in the Added state do not have original values in the ObjectStateEntry.

Deleted Deleted Deleted Deleted 8

オブジェクトは、オブジェクト コンテキストから削除されています。The object has been deleted from the object context. 変更が保存されると、オブジェクトの状態は Detached に変更されます。After the changes are saved, the object state changes to Detached.

Detached Detached Detached Detached 1

オブジェクトが存在しますが追跡されていません。The object exists but is not being tracked. エンティティは、作成された直後とオブジェクト コンテキストに追加される直前にこの状態になります。An entity is in this state immediately after it has been created and before it is added to the object context. また、Detach(Object) メソッドを呼び出してコンテキストから削除された後、または NoTrackingMergeOption を使用して読み込まれる場合にもこの状態になります。An entity is also in this state after it has been removed from the context by calling the Detach(Object) method or if it is loaded by using a NoTrackingMergeOption. ObjectStateEntry 状態のオブジェクトに関連付けられた Detached インスタンスは存在しません。There is no ObjectStateEntry instance associated with objects in the Detached state.

Modified Modified Modified Modified 16

オブジェクトのスカラー プロパティのいずれかが変更されています。SaveChanges() メソッドは呼び出されていません。One of the scalar properties on the object was modified and the SaveChanges() method has not been called. 変更追跡プロキシを持たない POCO エンティティでは、Modified メソッドが呼び出されたときに、変更されているプロパティの状態が DetectChanges() に変わります。In POCO entities without change-tracking proxies, the state of the modified properties changes to Modified when the DetectChanges() method is called. 変更が保存されると、オブジェクトの状態は Unchanged に変更されます。After the changes are saved, the object state changes to Unchanged.

Unchanged Unchanged Unchanged Unchanged 2

オブジェクトは、コンテキストにアタッチされた後、または最後に SaveChanges() メソッドが呼び出されてから変更されていません。The object has not been modified since it was attached to the context or since the last time that the SaveChanges() method was called.

注釈

オブジェクト コンテキストは、データ ソースに変更を保存し直すために、オブジェクトの状態を認識している必要があります。The object context must know the state of an object to save changes back to the data source. ObjectStateEntry オブジェクトは EntityState 情報を格納します。ObjectStateEntry objects store EntityState information. SaveChangesObjectContext メソッドは、コンテキストにアタッチされているエンティティを処理し、各オブジェクトの EntityState に応じてデータ ソースを更新します。The SaveChanges methods of the ObjectContext process entities that are attached to the context and update the data source depending on the EntityState of each object. 詳細については、「オブジェクトの作成、追加、変更、および削除」を参照してください。For more information, see Creating, Adding, Modifying, and Deleting Objects.

オブジェクト コンテキスト内のオブジェクトの状態は、ObjectStateManager で管理されます。The state of objects inside an object context is managed by the ObjectStateManager. オブジェクトの状態を確認するには、ObjectStateManager メソッドである、TryGetObjectStateEntryGetObjectStateEntry、または GetObjectStateEntries のいずれかを呼び出します。To find out the state of an object, call one of the following ObjectStateManager methods: TryGetObjectStateEntry, GetObjectStateEntry, or GetObjectStateEntries. StateObjectStateEntry プロパティが、オブジェクトの状態を定義します。The State property of the ObjectStateEntry defines the state of the object.

適用対象

こちらもご覧ください