Table of Contents

Class SaveWorkState

Namespace
Breeze.Persistence
Assembly
Breeze.Persistence.dll

Data structure and methods for processing entities during save

public class SaveWorkState
Inheritance
SaveWorkState
Inherited Members

Constructors

SaveWorkState(PersistenceManager, JArray)

Construct instance from given entitiesArray

public SaveWorkState(PersistenceManager persistenceManager, JArray entitiesArray)

Parameters

persistenceManager PersistenceManager
entitiesArray JArray

Fields

EntityErrors

Errors that stopped the save, or null if it did not fail validation.

public List<EntityError>? EntityErrors

Field Value

List<EntityError>

EntityInfoGroups

The entities from the save bundle, grouped by type, before the before-save hooks filter them.

protected List<SaveWorkState.EntityGroup> EntityInfoGroups

Field Value

List<SaveWorkState.EntityGroup>

KeyMappings

Temporary keys from the client mapped to the real keys, filled in by the save and returned to the client.

public List<KeyMapping> KeyMappings

Field Value

List<KeyMapping>

PersistenceManager

The manager running this save.

public PersistenceManager PersistenceManager

Field Value

PersistenceManager

Properties

EntitiesWithAutoGeneratedKeys

The entities in SaveMap that need a server-generated key.

public List<EntityInfo> EntitiesWithAutoGeneratedKeys { get; set; }

Property Value

List<EntityInfo>

SaveMap

The entities to be saved, by type. Set by BeforeSave(); the before-save hooks may add to, change or remove from it.

public Dictionary<Type, List<EntityInfo>> SaveMap { get; set; }

Property Value

Dictionary<Type, List<EntityInfo>>

WasUsed

Whether this state has already produced a save result. A used state is rebuilt rather than saved again.

public bool WasUsed { get; }

Property Value

bool

Methods

AfterSave()

Call PersistenceManager.AfterSaveEntities

public void AfterSave()

AfterSaveAsync(CancellationToken)

Call PersistenceManager.AfterSaveEntities and AfterSaveEntitiesAsync

public Task AfterSaveAsync(CancellationToken cancellationToken)

Parameters

cancellationToken CancellationToken

Returns

Task

BeforeSave()

Call BeforeSaveEntity() on each entity; add those returning 'true' to the SaveMap; then call BeforeSaveEntities()

public void BeforeSave()

BeforeSaveAsync(CancellationToken)

Call BeforeSaveEntity() and BeforeSaveEntityAsync() on each entity; add those returning 'true' to the SaveMap; then call BeforeSaveEntities() and BeforeSaveEntitiesAsync()

public Task BeforeSaveAsync(CancellationToken cancellationToken)

Parameters

cancellationToken CancellationToken

Returns

Task

ToSaveResult()

Convert for sending to client

public SaveResult ToSaveResult()

Returns

SaveResult