Skip to content

A free, easy-to-use Event Stream library for .NET and SQL Server

License

Notifications You must be signed in to change notification settings

MV10/EventStreamDotNet

Repository files navigation

EventStreamDotNet

A free, easy-to-use Event Stream library for .NET and SQL Server.

Features:

  • delta logging (domain events represent data model revisions)
  • version (ETag) validation
  • multiple domain data models can be managed within one application
  • configurable snapshot policies
  • snapshotting is handled internally by the event stream manager
  • projections can be driven off applied events or snapshot updates

The client application is responsible for providing:

  • the domain data model object graph
  • the domain event classes (describes changes to the data model)
  • the domain event handler (applies event changes to the state)
  • optional projection handlers (extracts data after changes applied)
  • services (likely CQRS) for interacting with the event stream manager

Requirements:

  • the domain data model has a single POCO as the root object
  • a POCO object graph represents the complete domain model
  • the root object can be represented by a unique string ID
  • changes to the domain model are represented by domain event POCOs
  • domain events are past-tense (in the sense of applied CQRS commands)

Package dependencies:

  • JSON.Net
  • Microsoft.Extensions.DependencyInjection
  • Microsoft.Extensions.Logging
  • System.Data.SqlClient

About

A free, easy-to-use Event Stream library for .NET and SQL Server

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published