Savvyio.Domain
4.0.0
dotnet add package Savvyio.Domain --version 4.0.0
NuGet\Install-Package Savvyio.Domain -Version 4.0.0
<PackageReference Include="Savvyio.Domain" Version="4.0.0" />
paket add Savvyio.Domain --version 4.0.0
#r "nuget: Savvyio.Domain, 4.0.0"
// Install Savvyio.Domain as a Cake Addin #addin nuget:?package=Savvyio.Domain&version=4.0.0 // Install Savvyio.Domain as a Cake Tool #tool nuget:?package=Savvyio.Domain&version=4.0.0
Savvyio.Domain
Provides the fundamental classes and interfaces to work with the concepts of DDD (Domain Driven Design).
About
An open-source project (MIT license) that provides a SOLID and clean .NET class library for writing DDD, CQRS and Event Sourcing applications.
It is, by heart, free, flexible and built to extend and boost your agile codebelt.
Related Packages
- Savvyio.App 🏭
- Savvyio.Commands 📦
- Savvyio.Commands.Messaging 📦
- Savvyio.Core 📦
- Savvyio.Domain 📦
- Savvyio.Domain.EventSourcing 📦
- Savvyio.EventDriven 📦
- Savvyio.EventDriven.Messaging 📦
- Savvyio.Extensions.Dapper 📦
- Savvyio.Extensions.DapperExtensions 📦
- Savvyio.Extensions.DependencyInjection 📦
- Savvyio.Extensions.DependencyInjection.Dapper 📦
- Savvyio.Extensions.DependencyInjection.DapperExtensions 📦
- Savvyio.Extensions.DependencyInjection.Domain 📦
- Savvyio.Extensions.DependencyInjection.EFCore 📦
- Savvyio.Extensions.DependencyInjection.EFCore.Domain 📦
- Savvyio.Extensions.DependencyInjection.EFCore.Domain.EventSourcing 📦
- Savvyio.Extensions.DependencyInjection.QueueStorage 📦
- Savvyio.Extensions.DependencyInjection.SimpleQueueService 📦
- Savvyio.Extensions.Dispatchers 📦
- Savvyio.Extensions.EFCore 📦
- Savvyio.Extensions.EFCore.Domain 📦
- Savvyio.Extensions.EFCore.Domain.EventSourcing 📦
- Savvyio.Extensions.Newtonsoft.Json 📦
- Savvyio.Extensions.QueueStorage 📦
- Savvyio.Extensions.SimpleQueueService 📦
- Savvyio.Extensions.Text.Json 📦
- Savvyio.Messaging 📦
- Savvyio.Queries 📦
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. |
-
net8.0
- Savvyio.Core (>= 4.0.0)
-
net9.0
- Savvyio.Core (>= 4.0.0)
NuGet packages (9)
Showing the top 5 NuGet packages that depend on Savvyio.Domain:
Package | Downloads |
---|---|
Savvyio.Extensions.EFCore.Domain
Extend the Savvy I/O support for Microsoft Entity Framework Core - optimized for DDD (Domain Driven Design). |
|
Savvyio.Extensions.DependencyInjection.Domain
Extend the Savvy I/O support for Microsoft Dependency Injection - optimized for DDD (Domain Driven Design). |
|
Savvyio.Domain.EventSourcing
Provides the default implementation of an Aggregate Root that is Event Sourced enabled. Complements the concepts of DDD (Domain Driven Design). |
|
Savvyio.Extensions.DependencyInjection.EFCore.Domain
Extend the Savvy I/O support for Microsoft Dependency Injection with Microsoft Entity Framework Core implementation - optimized for DDD (Domain Driven Design). |
|
Savvyio.Extensions.Dispatchers
Extend the Savvy I/O core assemblies with Mediator support to provide a uniform way of working with DDD, CQRS and Event driven architecture. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
4.0.0 | 179 | 11/13/2024 |
4.0.0-rc.1 | 105 | 11/12/2024 |
4.0.0-preview.2 | 51 | 10/6/2024 |
4.0.0-preview.1 | 51 | 9/6/2024 |
3.0.0 | 317 | 9/1/2024 |
3.0.0-preview.3 | 84 | 8/13/2024 |
3.0.0-preview.2 | 41 | 8/4/2024 |
3.0.0-preview.1 | 39 | 7/31/2024 |
2.2.0 | 424 | 4/10/2024 |
2.1.0 | 645 | 3/5/2024 |
2.1.0-preview.17 | 70 | 3/3/2024 |
2.1.0-preview.14 | 60 | 3/2/2024 |
2.1.0-preview.12 | 61 | 2/28/2024 |
2.1.0-preview | 258 | 2/26/2024 |
2.0.0 | 334 | 2/11/2024 |
2.0.0-preview.16 | 63 | 2/5/2024 |
2.0.0-preview.13 | 120 | 1/7/2024 |
2.0.0-preview.6 | 80 | 1/3/2024 |
2.0.0-preview | 252 | 1/2/2024 |
1.2.0-preview | 370 | 11/23/2023 |
1.1.0 | 1,228 | 12/6/2022 |
1.0.0 | 1,151 | 11/9/2022 |
0.8.0-rc | 430 | 6/1/2022 |
0.7.0-rc | 422 | 5/11/2022 |
Version: 4.0.0
Availability: .NET 9 and .NET 8
# ALM
- REMOVED Support for TFM .NET 6 (LTS)
- CHANGED Dependencies to latest and greatest with respect to TFMs
Version: 3.0.0
Availability: .NET 8 and .NET 6
# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs
Version: 2.1.0
Availability: .NET 8, .NET 7 and .NET 6
# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs
Version: 2.0.0
Availability: .NET 8, .NET 7 and .NET 6
# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs
# Breaking Changes
- REMOVED SerializableAttribute and ISerializable implementations on all custom exceptions due to Microsoft decision on deprecating most of the legacy serialization infrastructure https://github.com/dotnet/docs/issues/34893
- MOVED ITracedAggregateRepository interface in the Savvyio.Domain.EventSourcing namespace to the namespace equivalent in the Savvyio.Core assembly
- MOVED ITracedAggregateRoot interface in the Savvyio.Domain.EventSourcing namespace to the namespace equivalent in the Savvyio.Core assembly
- MOVED ITracedDomainEvent interface in the Savvyio.Domain.EventSourcing namespace to the namespace equivalent in the Savvyio.Core assembly
- MOVED IAggregateRepository interface in the Savvyio.Domain namespace to the namespace equivalent in the Savvyio.Core assembly
- MOVED IAggregateRoot interface in the Savvyio.Domain namespace to the namespace equivalent in the Savvyio.Core assembly
- MOVED IDomainEvent interface in the Savvyio.Domain namespace to the namespace equivalent in the Savvyio.Core assembly
- MOVED IDomainEventDispatcher interface in the Savvyio.Domain namespace to the namespace equivalent in the Savvyio.Core assembly
- MOVED IDomainEventHandler interface in the Savvyio.Domain namespace to the namespace equivalent in the Savvyio.Core assembly
- MOVED IEntity interface in the Savvyio.Domain namespace to the namespace equivalent in the Savvyio.Core assembly
Version: 1.1.0
Availability: .NET 7.0, .NET 6.0
Version: 1.0.0
Availability: .NET 7.0, .NET 6.0
# New Features
- ADDED Aggregate class in the Savvyio.Domain namespace that represents the base class from which all implementations of an Aggregate Root (as specified in Domain Driven Design) should derive
- ADDED AggregateRoot class in the Savvyio.Domain namespace that provides a way to cover the pattern of an Aggregate Root as specified in Domain Driven Design
- ADDED DomainEvent class in the Savvyio.Domain namespace that provides a default implementation of the IDomainEvent interface
- ADDED DomainEventDispatcher class in the Savvyio.Domain namespace that provides a default implementation of the IDomainEventDispatcher interface
- ADDED DomainEventDispatcherExtensions class in the Savvyio.Domain namespace that consist of extension methods for the IDomainEventDispatcher interface: RaiseMany, RaiseManyAsync
- ADDED DomainEventExtensions class in the Savvyio.Domain namespace that consist of extension methods for the IDomainEvent interface: GetEventId, GetTimestamp
- ADDED DomainEventHandler class in the Savvyio.Domain namespace that provides a generic and consistent way of handling Domain Event (as specified in Domain Driven Design) objects that implements the IDomainEvent interface
- ADDED Entity class in the Savvyio.Domain namespace that provides a way to cover the pattern of an Entity as specified in Domain Driven Design
- ADDED IAggregateRepository interface in the Savvyio.Domain namespace that defines a generic way of abstracting persistent repositories (CRUD) that is optimized for Domain Driven Design
- ADDED IAggregateRoot interface in the Savvyio.Domain namespace that defines a marker interface of an Aggregate as specified in Domain Driven Design
- ADDED IDomainEvent interface in the Savvyio.Domain namespace that defines a marker interface that specifies something that happened in the domain that you want other parts of the same domain (in-process/inner-application) to be made aware of
- ADDED IDomainEventDispatcher interface in the Savvyio.Domain namespace that defines a Domain Event dispatcher that uses Fire-and-Forget/In-Only MEP
- ADDED IDomainEventHandler interface in the Savvyio.Domain namespace that specifies a handler responsible for objects that implements the IDomainEvent interface
- ADDED IEntity interface in the Savvyio.Domain namespace that defines an Entity as specified in Domain Driven Design
- ADDED SavvyioOptionsExtensions class in the Savvyio.Domain namespace that consist of extension methods for the SavvyioOptions class: AddDomainEventHandler, AddDomainEventDispatcher
- ADDED SingleValueObject record in the Savvyio.Domain namespace that provides an implementation of ValueObject tailored for handling a single value
- ADDED ValueObject record in the Savvyio.Domain namespace that represents an object whose equality is based on the value rather than identity as specified in Domain Driven Design
- ADDED ITracedAggregateRepository interface in the Savvyio.Domain.EventSourcing namespace that defines a generic way of abstracting traced read- and writable repositories (CRud) that is optimized for Domain Driven Design
- ADDED ITracedAggregateRoot interface in the Savvyio.Domain.EventSourcing namespace that defines an Event Sourcing capable contract of an Aggregate as specified in Domain Driven Design
- ADDED ITracedDomainEvent interface in the Savvyio.Domain.EventSourcing namespace that specifies something that happened in the domain that you want other parts of the same domain (in-process/inner-application) to be aware of