![]() |
VOOZH | about |
dotnet add package Enigmatry.Entry.EntityFramework --version 10.2.3
NuGet\Install-Package Enigmatry.Entry.EntityFramework -Version 10.2.3
<PackageReference Include="Enigmatry.Entry.EntityFramework" Version="10.2.3" />
<PackageVersion Include="Enigmatry.Entry.EntityFramework" Version="10.2.3" />Directory.Packages.props
<PackageReference Include="Enigmatry.Entry.EntityFramework" />Project file
paket add Enigmatry.Entry.EntityFramework --version 10.2.3
#r "nuget: Enigmatry.Entry.EntityFramework, 10.2.3"
#:package Enigmatry.Entry.EntityFramework@10.2.3
#addin nuget:?package=Enigmatry.Entry.EntityFramework&version=10.2.3Install as a Cake Addin
#tool nuget:?package=Enigmatry.Entry.EntityFramework&version=10.2.3Install as a Cake Tool
A library that provides extensions and utilities for working with Entity Framework Core, enhancing the ORM capabilities with additional features and patterns.
Use this library to implement common Entity Framework Core patterns and extensions, such as repositories, unit of work, auditing, and soft delete functionality.
Add the package to your project:
dotnet add package Enigmatry.Entry.EntityFramework
Creating a repository:
using Enigmatry.Entry.Core.Entities;
using Enigmatry.Entry.EntityFramework;
using Microsoft.EntityFrameworkCore;
// Define an entity
public class Customer : EntityWithTypedId<Guid>
{
public string Name { get; set; } = string.Empty;
public string Email { get; set; } = string.Empty;
public bool IsActive { get; set; }
}
// Create a DbContext
public class ApplicationDbContext : BaseDbContext
{
public DbSet<Customer> Customers { get; set; } = default!;
public ApplicationDbContext(DbContextOptions options, EntitiesDbContextOptions entitiesDbContextOptions)
: base(entitiesDbContextOptions, options)
{
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
// Model builder is configured through base class
}
}
// Use the repository pattern
public interface ICustomerRepository : IRepository<Customer, Guid>
{
Task<Customer?> FindByEmailAsync(string email);
}
public class CustomerRepository : EntityFrameworkRepository<Customer, Guid>, ICustomerRepository
{
public CustomerRepository(ApplicationDbContext dbContext)
: base(dbContext)
{
}
public async Task<Customer?> FindByEmailAsync(string email)
{
return await DbSet
.FirstOrDefaultAsync(c => c.Email == email && c.IsActive);
}
}
Register Entity Framework services:
using Enigmatry.Entry.Core.Data;
using Enigmatry.Entry.EntityFramework;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
// Configure EntitiesDbContextOptions
var entitiesOptions = new EntitiesDbContextOptions
{
ConfigurationAssembly = typeof(Customer).Assembly
};
services.AddSingleton(entitiesOptions);
// Register DbContext
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
// Register repositories
services.AddScoped<ICustomerRepository, CustomerRepository>();
// Add unit of work
services.AddScoped<IUnitOfWork, EntityFrameworkUnitOfWork>();
// Register DbContext as the concrete DbContext implementation for the unit of work
services.AddScoped<DbContext>(sp => sp.GetRequiredService<ApplicationDbContext>());
}
}
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.2.3 | 130 | 6/1/2026 |
| 10.2.3-preview.4 | 55 | 6/1/2026 |
| 10.2.2 | 361 | 4/27/2026 |
| 10.2.1-preview.1 | 58 | 4/27/2026 |
| 10.1.0 | 278 | 4/16/2026 |
| 10.0.1 | 191 | 5/19/2026 |
| 10.0.1-preview.2 | 58 | 4/16/2026 |
| 10.0.0 | 128 | 4/2/2026 |
| 9.6.0 | 514 | 3/18/2026 |
| 9.5.0 | 956 | 1/26/2026 |
| 9.4.0 | 1,805 | 12/22/2025 |
| 9.3.1-preview.3 | 271 | 12/18/2025 |
| 9.3.1-preview.1 | 514 | 11/25/2025 |
| 9.3.0 | 1,204 | 11/10/2025 |
| 9.2.0 | 1,553 | 9/24/2025 |
| 9.1.1-preview.5 | 231 | 8/8/2025 |
| 9.1.1-preview.4 | 150 | 6/27/2025 |
| 8.3.1-preview.1 | 153 | 12/24/2025 |
| 8.3.0 | 1,841 | 12/23/2025 |
| 8.2.0 | 658 | 9/24/2025 |