APF.Core.Clean.EfCore
1.0.0-Beta-05
dotnet add package APF.Core.Clean.EfCore --version 1.0.0-Beta-05
NuGet\Install-Package APF.Core.Clean.EfCore -Version 1.0.0-Beta-05
<PackageReference Include="APF.Core.Clean.EfCore" Version="1.0.0-Beta-05" />
<PackageVersion Include="APF.Core.Clean.EfCore" Version="1.0.0-Beta-05" />
<PackageReference Include="APF.Core.Clean.EfCore" />
paket add APF.Core.Clean.EfCore --version 1.0.0-Beta-05
#r "nuget: APF.Core.Clean.EfCore, 1.0.0-Beta-05"
#:package APF.Core.Clean.EfCore@1.0.0-Beta-05
#addin nuget:?package=APF.Core.Clean.EfCore&version=1.0.0-Beta-05&prerelease
#tool nuget:?package=APF.Core.Clean.EfCore&version=1.0.0-Beta-05&prerelease
Core.Clean.EfCore
Core.Clean.EfCore is an infrastructure-level package that provides Entity Framework Core abstractions, base repositories, audit trail handling, and related utilities.
It is designed to be used in the infrastructure layer of microservices following Clean Architecture.
This package depends on Core.Clean.Common for shared abstractions and base entities.
Projects
src/Aurionpro.PaymentFramework.Core.Clean.EfCore
- Aurionpro.PaymentFramework.Core.Clean.EfCore
tests/Aurionpro.PaymentFramework.Core.Clean.EfCore.Tests
- Aurionpro.PaymentFramework.Core.Clean.EfCore.Tests
Purpose
- Provides base DbContext and repository abstractions for EF Core.
- Implements IRepository and IQueryableRepository for CQRS patterns.
- Handles audit trail functionality using AuditTrailInterceptor and IAuditTrailStoreService.
- Supplies base entities and interfaces like Entity, IAuditSetter, and ISupportChangeTracking.
Features
- Base Repositories: Generic command and query repositories (
IRepository
,IQueryableRepository
) for domain entities. - Audit Trails: Interceptor for automatic audit logging (
AuditTrailInterceptor
) and storage service (IAuditTrailStoreService
). - Entities: Base entity (
Entity
) and interfaces for change tracking and auditing (IAuditSetter
,ISupportChangeTracking
).
Getting Started
- Clone the repo
- Navigate to the root directory
- Run:
dotnet build
dotnet test
Register AuditTrail dependency in Infrastructure layer of a microservice, if required
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddDbContext<ApplicationDbContext>((sp, options) =>
{
options.UseMySql(writeConnectionString, ServerVersion.AutoDetect(writeConnectionString),
mySql => mySql.MigrationsAs+sembly(migrationsAssembly)).AddInterceptors(
new AuditTrailInterceptor(
sp.GetRequiredService<ISqlExecutor>(),
sp.GetRequiredService<IUserContectService>(),
sp.GetRequiredService<IAuditTrailStoreService>()
)
);
});
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 was computed. 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. |
-
net8.0
- APF.Core.Clean.Common (>= 1.0.0-Beta-22)
- Microsoft.EntityFrameworkCore (>= 8.0.13)
- Pomelo.EntityFrameworkCore.MySql (>= 8.0.3)
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 |
---|---|---|
1.0.0-Beta-05 | 110 | 10/9/2025 |
1.0.0-Beta-04 | 96 | 10/3/2025 |
1.0.0-Beta-03 | 351 | 9/16/2025 |
1.0.0-Beta-02 | 104 | 8/22/2025 |
1.0.0-Beta-01 | 376 | 7/29/2025 |
# Changelog
## 1.0.0-Beta-05 - 2025-10-09
- Upgraded Common package version for impacted changes of new Database package restructuring related changes.
- Removed direct dependency of Dapper from AuditTrailInterceptor and used ISqlExecutor