Skip to content

Storage Providers

Kieron Lanning edited this page Apr 16, 2026 · 1 revision

Storage Providers

Provider matrix

Package Registration API Store type
EventSourcing.SqlServer.Events AddSqlServerEventStore() Event stream
EventSourcing.SqlServer.Snapshot AddSqlServerSnapshotQueryableEventStore() Queryable snapshots
EventSourcing.AzureStorage AddAzureTableEventStore() Event stream
EventSourcing.MongoDB.Events AddMongoDBEventStore() Event stream
EventSourcing.MongoDB.Snapshot AddMongoDBSnapshotQueryableEventStore() Queryable snapshots
EventSourcing.CosmosDb.Snapshot AddCosmosDbQueryableEventStore() Queryable snapshots

Choosing a provider

  • Choose an event stream store when you only need canonical event persistence.
  • Add a queryable snapshot store when you need query/list/count APIs or richer administration pages.
  • The sample uses SQL Server events plus SQL Server queryable snapshots.

Provider notes

SQL Server / Azure SQL

  • Strongest first-class sample and documentation coverage in this repository
  • Supports native transaction coordination where boundaries match
  • Queryable snapshot store is the easiest fit for paging and filters

See SQL-Server.

Azure Table / Blob

  • Event rows live in Azure Tables
  • Blob storage supports snapshots and large event payloads

MongoDB

  • Event stream and queryable snapshot options are both available

Cosmos DB

  • Queryable snapshot store option
  • Integration test coverage exists, though local runtime availability may vary by environment

Clone this wiki locally