ITLab.Template.DevPack.Infrastructure.EfCore.Interceptors
Implements EF Core SaveChanges interceptors for cross-cutting persistence behaviors.
Componentes
| Tipo | Nome | Responsabilidade |
|---|---|---|
| Class | AuditableEntityInterceptor | Applies created/updated metadata for IAuditable entities before each save |
| Class | SoftDeleteInterceptor | Converts hard deletes to soft-delete updates for ISoftDeletable entities |
| Class | DispatchDomainEventsInterceptor | Publishes and clears domain events from tracked entities after save |
Como usar
// Interceptors are additive and can be chained.
options.AddInterceptors(
auditableInterceptor,
softDeleteInterceptor,
dispatchDomainEventsInterceptor);
O que não fazer
- Do not depend on interceptor side effects for business invariants.
- Do not publish integration events directly in
DispatchDomainEventsInterceptorwithout outbox guarantees.
Extensão pelo produto
- Products can override behavior by replacing registrations with custom interceptor implementations.
- If replacing, preserve the contracts of
IAuditableandISoftDeletableto keep consistency.