ObjectContext.RollbackChanges — метод
Отменяет все изменения в контексте объектов, которые не были сохранены методом AcceptChanges
, SaveObject<T>(T)
или SaveObjects<T>(IEnumerable<T>)
.
-
Пространство имён:
DocsVision.Platform.ObjectModel
-
Сборка:
DocsVision.Platform.ObjectModel.dll
Заметки
Отменяются изменения объектов, имеющих следующие флаги в состояниях (ObjectStateFlags
): ObjectStateFlags.Modified
, ObjectStateFlags.Added
или ObjectStateFlags.Deleted
. Перед непосредственной отменой изменений, метод взывает событие ObjectContext.BeforeRollback
, которое может быть использовано для прекращения процедуры отката.
После вызова ObjectContext.AcceptChanges
отмена принятых изменений будет невозможна.
Примеры
В качестве примера приведён код получения двух документов, в каждый из которых вносится определённое изменение. Изменения могут быть отменены при проверке флага roolback
(1)
Document documentA = objectContext.GetObject<Document>(new Guid("00000000-0000-0000-0000-000000000000"));
documentA.Description = "Описание не корректно"; (2)
Document documentB = objectContext.GetObject<Document>(new Guid("00000000-0000-0000-0000-000000000001"));
documentB.MainInfo.Name = "Название не корректно"; (3)
if (roolback) (4)
{
objectContext.RollbackChanges(); (5)
}
1 | Инициализация контекста объектов. |
2 | Получение и изменение документа. |
3 | Флаг разрешающий откат изменений. |
4 | Отмена всех изменений. |