Skip to content

SmartFire/Aggregates.NET

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build status

Aggregates.NET

Aggregates.NET is a framework to help developers integrate the excellent NServicebus and EventStore libraries together.

This library contains code to help create and manage domain driven design objects such as Aggregates, Entities, Value Objects, etc. This framework is by far not the only option, other libraries include:

This project was originally inspired by and still uses many ideas from NES and CommonDomain.

What will Aggregates.NET do for you?

We fill in the gap between EventStore and NServicebus. Commands from NServicebus are applied to aggregate objects via message handlers and events generated via the aggregates are saved to the event stream and published to the bus.

Current features include -

  • Aggregate Roots
  • Entities
  • Value Objects
  • Specifications
  • Multithreaded event dispatching (NEW)
  • Type safe Unit of Work and Repository pattern
  • Automatic saving and publishing of domain events
  • Message idempotency
  • NO internal IOC container (NServicebus used for resolutions)
  • Thorough sample

Planned future features -

  • Automatic conflict resolution (when possible)
  • Automatic validation using specifications
  • Projections configuration

Status

Aggregates.NET packages are starting to get published to the world. The project is completely under test and can be integrated into NServicebus and Eventstore seemlessly. Future versions of Aggregates.NET will be automatically published so keep checking back for latest features!

Nuget

Nuget packages are published in a pre-release state. They are available under the id Aggregates.NET. There are also binaries and source code releases available via github.

Documentation

About

.NET event sourced domain driven design model via NServicebus and GetEventStore

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 98.5%
  • PowerShell 1.5%