Skip to content

Event sourcing

Nicolai Wolf edited this page Sep 16, 2026 · 1 revision

Framework overview

  • Implementation of the event sourcing desing pattern
    • Event store
    • Implementation of the outbox design pattern
    • Event subscriber pipeline
      • Both inline and asynchronously, analog to Marten.NET
    • Aggregates
      • Construction via replay using either
        • Static factory methods
        • Aggregate constructors
        • Aggregate factory as a service
    • Snapshotting
    • Full configuration via configuration-builders or attributes
  • Abstractions for those implementations
  • SQL-specific implementations of persistence abstractions
  • Drivers for database systems:
    • SQLite
    • PostgreSQL
    • MS SQL Server
Package Contents
DandyDotnet.Patterns.EventSourcing.Abstractions Abstractions of event store, subscribers and aggregate factories, attributes, extensions
DandyDotnet.Patterns.EventSourcing Event store implementation, outbox, async worker, configuration API, subscriber manager, persistence abstractions
DandyDotnet.Patterns.EventSourcing.Persistence.Sql SQL-specific perstistence implementations, abstract SQL strings
DandyDotnet.Patterns.EventSourcing.Persistence.Sql.Postgres Postgres-specific SQL strings implementation, Postgres-specific migrations
DandyDotnet.Patterns.EventSourcing.Persistence.Sql.Sqlite SQLite-specific SQL strings implementation, SQLite-specific migrations
DandyDotnet.Patterns.EventSourcing.Persistence.Sql.SqlServer MSSQL-specific SQL strings implementation, MSSQL-specific migrations

Configuration

Configuring dependencies

Serializer

Database driver

Keys

Aggregates

Aggregate factories

Snapshots

Events

Lifetimes

Subscribers

Modes

Exception handlers

Outbox

Example setup

Clone this wiki locally