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. Методы SaveChanges контекста объекта ObjectContext обрабатывают сущности, присоединенные к контексту, и обновляют источник данных в соответствии со значением 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: TryGetObjectStateEntry, GetObjectStateEntry или GetObjectStateEntries.To find out the state of an object, call one of the following ObjectStateManager methods: TryGetObjectStateEntry, GetObjectStateEntry, or GetObjectStateEntries. Свойство State объекта ObjectStateEntry определяет состояние объекта.The State property of the ObjectStateEntry defines the state of the object.

Применяется к

Дополнительно