let decide cmd state : EventAction<Event>
Validate, decide, and emit events.
let fold event state : State
Evolve state from events.
The rest: event storage, recovery, projections, sagas, and correlation-based read-your-writes.
Start with two pure domain functions, then learn where storage, recovery, and distributed boundaries matter.
dotnet add package FCQRSthen follow the learning pathlet decide cmd state : EventAction<Event>
Validate, decide, and emit events.
let fold event state : State
Evolve state from events.
A request to change one aggregate.
decideChoose an event from the command and current state.
Immutable facts appended to the journal.
foldApplies events to aggregate state, live and during replay.
Update read models asynchronously: the views your application queries.
Persisted events rebuild aggregate state after restart.
Stored workflow state coordinates commands across aggregates.
Aggregates and sagas replay stored history before processing.
Wait for a selected projection before querying its view.
Capture state for faster replay and recovery.
Also built in Telemetry & health signals Structured logging
decidefold