BaseSystem.BuildingBlocks.CQRS.MediatR 1.0.0
BaseSystem.BuildingBlocks • Rövid áttekintés
Cél: Újrahasznosítható .NET építőkockák DDD/CQRS-alapú alkalmazásokhoz.
A csomagok szétválasztják az absztrakciókat az implementációktól, így csak azt húzod be, amire tényleg szükséged van.
Miért ilyen lebontás?
- Laza csatolás: a domain mag (DDD) nem függ EF-től, webtől vagy üzenetküldőtől.
- Opcionális modulok: EF, MediatR, ASP.NET Core, MassTransit külön csomagokban.
- Könnyű cserélhetőség: bármely réteg lecserélhető (pl. más ORM vagy bus).
- Tiszta rétegek: a domain szabályok nem „szivárognak” át az infrastrukturába és fordítva.
Csomagok
1) BaseSystem.BuildingBlocks.DDD.Abstractions
Mi ez?
DDD-primitívek és absztrakciók: Entity, AggregateRoot, ValueObject, IDomainEvent,
IRepository<T>, IUnitOfWork, soft delete/audit interfészek.
Mikor használd?
Mindig – ez a domain mag.
2) BaseSystem.BuildingBlocks.Data.EFCore
Mi ez?
EF Core integrációk: DbContextBase, BaseEntityConfiguration<T>, Specification → EF adapter,
audit/soft-delete hookok, globális query filter minták.
Mikor használd?
Ha EF Core a perzisztencia.
3) BaseSystem.BuildingBlocks.CQRS.MediatR
Mi ez?
CQRS segédletek MediatR-hez: ICommand<T>, IQuery<T>, UnitOfWorkBehavior, ValidationBehavior,
ITransactionalRequest marker.
Mikor használd?
Ha parancs/lekérdezés mintával és pipeline-okkal dolgozol.
4) BaseSystem.BuildingBlocks.Web.AspNetCore
Mi ez?
ASP.NET Core kiegészítők: ProblemDetails ↔ ErrorOr/hibák map, exception/validation middleware-ek,
Minimal API/Controller helper metódusok.
Mikor használd?
Ha web API-t építesz és egységes hibakezelést szeretnél.
5) BaseSystem.BuildingBlocks.Messaging.MassTransit
Mi ez?
MassTransit bekötés minták: EF Outbox használat, publisher/consumer idempotencia tippek,
alap konfigurációs segéd.
Mikor használd?
Ha megbízható (Outbox-os) integrációs eseményeket küldesz/fogadsz.
Tipikus függőségi irány
DDD.Abstractions
├─ Data.EFCore
├─ CQRS.MediatR
├─ Web.AspNetCore
└─ Messaging.MassTransit
A modulok mind a DDD.Abstractions-ra épülnek, egymástól függetlenül.
No packages depend on BaseSystem.BuildingBlocks.CQRS.MediatR.
.NET 9.0
- BaseSystem.BuildingBlocks.DDD.Abstractions (>= 1.0.0)
- ErrorOr (>= 2.0.1)
- FluentValidation (>= 11.11.0)
- FluentValidation.DependencyInjectionExtensions (>= 11.11.0)
- MediatR (>= 13.1.0)
| Version | Downloads | Last updated |
|---|---|---|
| 1.0.0 | 3 | 10/27/2025 |