ArkaSoftware.Framework.Core.Domain
1.0.0
dotnet add package ArkaSoftware.Framework.Core.Domain --version 1.0.0
NuGet\Install-Package ArkaSoftware.Framework.Core.Domain -Version 1.0.0
<PackageReference Include="ArkaSoftware.Framework.Core.Domain" Version="1.0.0" />
<PackageVersion Include="ArkaSoftware.Framework.Core.Domain" Version="1.0.0" />
<PackageReference Include="ArkaSoftware.Framework.Core.Domain" />
paket add ArkaSoftware.Framework.Core.Domain --version 1.0.0
#r "nuget: ArkaSoftware.Framework.Core.Domain, 1.0.0"
#:package ArkaSoftware.Framework.Core.Domain@1.0.0
#addin nuget:?package=ArkaSoftware.Framework.Core.Domain&version=1.0.0
#tool nuget:?package=ArkaSoftware.Framework.Core.Domain&version=1.0.0
ArkaSoftware.Framework.Core.Domain
ArkaSoftware.Framework.Core.Domain is a library designed to provide core domain building blocks for implementing Domain-Driven Design (DDD) in .NET applications. It includes essential classes and interfaces for aggregates, entities, value objects, domain events, and exceptions.
Features
- Core abstractions for Aggregate Roots and Entities.
- Support for Value Objects with built-in examples (e.g., BusinessID, Description, Image).
- Interfaces for Auditable Entities and Domain Events.
- Domain-specific exceptions for robust error handling.
- Designed for seamless integration with DDD-based applications.
Project Structure
Aggregates
- AggregateRoot.cs: Base class for aggregate roots.
- IAggregateRoot.cs: Interface for aggregate roots.
Entities
- Entity.cs: Base class for domain entities.
- IAuditableEntity.cs: Interface for auditable entities.
Events
- IDomainEvent.cs: Interface for domain events.
Exceptions
- DomainStateException.cs: Exception for invalid domain state.
- InvalidEntityStateException.cs: Exception for invalid entity state.
- InvalidValueObjectStateException.cs: Exception for invalid value object state.
Value Objects
- BaseValueObjs.cs: Base class for value objects.
- BusinessID.cs: Example value object for representing business IDs.
- Description.cs: Example value object for entity descriptions.
- Image.cs: Example value object for images.
- PlId.cs: Example value object for unique identifiers.
Installation and Usage
Add this library to your project:
dotnet add package Arks.Framework.Core.DomainUse the provided base classes and interfaces to define your domain layer.
Implement domain-specific logic using aggregates, entities, and value objects.
Handle domain events using the
IDomainEventinterface.
Contribution
If you want to contribute to this project:
- Fork the repository.
- Make your changes.
- Submit a Pull Request.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Contact
For inquiries or issues, please reach out to your.email@example.com.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net9.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|