Skip to main content
.NET Framework 4.6.2+

Session.GetObjectsToSave(Boolean) Method

Returns a collection of persistent objects that will be saved when the current transaction is committed, including objects that will be saved in the parent transaction(s), optionally.

Namespace: DevExpress.Xpo

Assembly: DevExpress.Xpo.v24.2.dll

Declaration

public virtual ICollection GetObjectsToSave(
    bool includeParent
)

Parameters

Name Type Description
includeParent Boolean

true, to include persistent objects that will be saved in the parent transaction(s); otherwise, false.

Returns

Type Description
ICollection

The collection of persistent objects that will be saved when the current transaction is committed.

Remarks

The GetObjectsToSave method returns a collection of persistent objects that will be saved only when the current transaction is committed. It is overridden in the NestedUnitOfWork class to return persistent objects that will be saved in the parent transaction(s), optionally. For general information on saving persistent objects, see Save Persistent Objects.

Objects that have Deferred Deletion enabled are actually modified upon deletion. So, they appear in the collection returned by the Session.GetObjectsToSave method, not in the collection returned by the Session.GetObjectsToDelete method.

The Session.GetObjectsToSave and Session.GetObjectsToDelete methods do not create new collection instances and fill them with objects when called. Instead, these methods return references to internal collections whose content changes throughout the life cycle of a Session.

ICollection changedObjects = myUnitOfWork.GetObjectsToSave();
int count = changedObject.Count; // 'count' is an arbitrary number
myUnitOfWork.CommitChanges();
count = changedObject.Count; // here, 'count' always equals zero
See Also