TaskHub.Shared.Persistence.EntityFramework
Entity Framework Core integration with best practices for microservices.
Contents
Summary
ContextBase<T> for consistent DbContext implementation.
- Automatic configuration of Outbox and Media tables.
- Performance and observability interceptors.
- Integrated Domain Event to Outbox conversion.
The EntityFramework module provides a robust foundation for building EF Core-based data access layers.
Configuration
EF Core is configured via the Persistence section in appsettings.json.
"Persistence": {
"ConnectionString": "Host=localhost;Database=TaskHub;Username=admin;Password=secret",
"Outbox": { ... },
"Media": { ... }
}
ContextBase
A base class for DbContext that includes:
- Automatic Configuration: Scans the assembly for
IEntityTypeConfiguration<T>.
- Integrated Outbox: Optional support for the Outbox pattern.
- Integrated Media: Optional support for media metadata tracking.
Features
- Interceptors: Built-in support for audit logging and OpenTelemetry tracing.
- Resiliency: Integration with Polly for database connection retries.