Fermion.EntityFramework.Core
0.0.3
dotnet add package Fermion.EntityFramework.Core --version 0.0.3
NuGet\Install-Package Fermion.EntityFramework.Core -Version 0.0.3
<PackageReference Include="Fermion.EntityFramework.Core" Version="0.0.3" />
<PackageVersion Include="Fermion.EntityFramework.Core" Version="0.0.3" />
<PackageReference Include="Fermion.EntityFramework.Core" />
paket add Fermion.EntityFramework.Core --version 0.0.3
#r "nuget: Fermion.EntityFramework.Core, 0.0.3"
#:package Fermion.EntityFramework.Core@0.0.3
#addin nuget:?package=Fermion.EntityFramework.Core&version=0.0.3
#tool nuget:?package=Fermion.EntityFramework.Core&version=0.0.3
Fermion.EntityFramework.Core
Overview
Fermion.EntityFramework.Core is a .NET 8.0 Entity Framework Core extension package providing robust data access and management capabilities.
Key Extensions
DbContextAggregateRootExtensions
This class provides utility methods for managing entity lifecycle and auditing in DbContext.
Methods
- SetCreationTimestamps
- Automatically sets creation time for new entities
- Captures creator ID
- Skips entities with
ExcludeFromProcessingAttribute
public static void SetCreationTimestamps(
this DbContext context,
IHttpContextAccessor httpContextAccessor)
{
var entries = context.ChangeTracker.Entries()
.Where(e => e.Entity is ICreationAuditedObject
&& e.State == EntityState.Added);
foreach (var entry in entries)
{
// Sets CreationTime and CreatorId
var entity = (ICreationAuditedObject)entry.Entity;
entity.CreationTime = DateTime.UtcNow;
entity.CreatorId = httpContextAccessor.HttpContext.User.GetUserId();
}
}
1 SetModificationTimestamps - Updates last modification time for modified entities - Manages concurrency stamps - Supports audited objects
2 SetSoftDelete - Handles soft delete operations - Sets deletion time and deleter ID - Respects entity-level exclusions
3 SetCorrelationId - Assigns correlation ID to new entities - Useful for tracing requests across system boundaries
ModelBuilderExtensions
Key Features
Global Entity Configuration
- Automatic ID generation
- Soft delete query filtering
- Concurrency stamp management
Audit Trail Configuration
- Configures creation, modification, and deletion audit fields
- Sets up required/optional fields
Installation
NuGet Package Manager
Install-Package Fermion.EntityFramework.Core
.NET CLI
dotnet add package Fermion.EntityFramework.Core
Features
- Generic Repository Pattern
- Aggregate Root Implementation
- Soft Delete Mechanism
- Audit Trail Tracking
- Flexible Entity Configuration
License
MIT License
| 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
- Fermion.Domain.Core (>= 0.0.4)
- Microsoft.AspNetCore.Http.Abstractions (>= 2.3.0)
- Microsoft.EntityFrameworkCore (>= 9.0.3)
- System.Linq.Dynamic.Core (>= 1.6.0.2)
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 |
|---|