3. UI
Event Store
Repository
Events
Command Handler
Command
Command Bus
Commands
Domain
Model
Domain
Model
Domain
Model
Aggregates
Event Bus Event Handler
Data
Thin Data Layer
Query DTO
Events
7. UI
Event Store
Repository
Events
Command Handler
Command
Command Bus
Commands
Domain
Model
Domain
Model
Domain
Model
Aggregates
Events Use an
Event Bus Event Handler
Data
Thin Data Layer
Query DTO
autoincrement
column?
Use a
‘DossierNumberGenerator’
15. Read the entire event stream Save the entire event stream
WIP
ANewRefactoredAggregate
AnotherNewRefactoredAggregate
anAggregate
SomeEvent
SomeOtherEvent
AndSomeMoreEvent
Migration
Process
SomeEvent
SomeOtherEvent
AndSomeMoreEvent
AndAFunkyEvent
Event Store
Event Store
https://github.com/NEventStore/NEventStore.Migrations https://github.com/vermegi/Eventstream.Migrator
16. UI
Event Store
Repository
Events
Command Handler
Command
Command Bus
Commands
Domain
Model
Domain
Model
Domain
Model
Aggregates
Event Bus Event Handler
Data
Thin Data Layer
Query DTO
Events
Replay needed!
31. Reuse the same
logic
UI
Event Store
Repository
Events
Command Handler
Command
Command Bus
Commands
Domain
Model
Domain
Model
Domain
Model
Aggregates
Event Bus Event Handler
Data
Thin Data Layer
Query DTO
Events
Hard to do data
updates
Do it functional