![]() |
VOOZH | about |
dotnet add package Franz.Common.EntityFramework --version 1.7.7
NuGet\Install-Package Franz.Common.EntityFramework -Version 1.7.7
<PackageReference Include="Franz.Common.EntityFramework" Version="1.7.7" />
<PackageVersion Include="Franz.Common.EntityFramework" Version="1.7.7" />Directory.Packages.props
<PackageReference Include="Franz.Common.EntityFramework" />Project file
paket add Franz.Common.EntityFramework --version 1.7.7
#r "nuget: Franz.Common.EntityFramework, 1.7.7"
#:package Franz.Common.EntityFramework@1.7.7
#addin nuget:?package=Franz.Common.EntityFramework&version=1.7.7Install as a Cake Addin
#tool nuget:?package=Franz.Common.EntityFramework&version=1.7.7Install as a Cake Tool
A comprehensive library within the Franz Framework, designed to extend and simplify the integration of Entity Framework Core in .NET applications. It provides clean abstractions, auditing, soft deletes, repositories, and seamless integration with Franz Business and Mediator packages.
Database Configurations*
CosmosDBConfig) and MongoDB (MongoDBConfig).DatabaseOptions).Repositories (Separation of Entity and Aggregate Repositories)
EntityRepository<TEntity>: CRUD operations for standalone entities.AggregateRepository<TAggregateRoot>: For event-sourced aggregates.ReadRepository<T>: Optimized read-only data access.DbContextBase (π canonical context)
CreatedBy, CreatedOn, LastModifiedBy, LastModifiedOn).IsDeleted, DeletedBy, DeletedOn) with global query filters.SaveEntitiesAsync β now everything happens in SaveChangesAsync.Conversions
EnumerationConverter: Easily map domain enumerations to EF Core-friendly values.Extensions
ModelBuilderExtensions: Simplify entity configuration.ServiceCollectionExtensions: Wire up repositories and context with DI.public class AppDbContext : DbContextBase
{
public AppDbContext(DbContextOptions<AppDbContext> options, IDispatcher dispatcher, ICurrentUserService currentUser)
: base(options, dispatcher, currentUser)
{
}
public DbSet<Order> Orders => Set<Order>();
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.ApplyConfigurationsFromAssembly(GetType().Assembly);
}
}
public class OrderRepository : EntityRepository<AppDbContext, Order>
{
public OrderRepository(AppDbContext dbContext) : base(dbContext) { }
}
β Best for:
public class ProductRepository : AggregateRepository<AppDbContext, Product, ProductEvent>
{
public ProductRepository(AppDbContext dbContext, IEventStore eventStore)
: base(dbContext, eventStore) { }
}
β Best for:
| Feature | EntityRepository | AggregateRepository |
|---|---|---|
| Use Case | Standalone entities | Event-sourced aggregates |
| CRUD Support | β Yes | β No (event-only) |
| Supports Event Sourcing | β No | β Yes |
| Direct Entity Access | β Yes | β No (root only) |
All entities deriving from Franzβs Entity<TId> automatically get:
CreatedOn, CreatedByLastModifiedOn, LastModifiedByIsDeleted, DeletedOn, DeletedBypublic class Order : Entity<Guid>
{
public string CustomerName { get; private set; } = string.Empty;
public decimal TotalAmount { get; private set; }
// Domain behavior...
}
EF Core automatically filters out IsDeleted entities via a global query filter.
dotnet nuget add source "https://your-private-feed-url" \
--name "AzurePrivateFeed" \
--username "YourAzureUsername" \
--password "YourAzurePassword" \
--store-password-in-clear-text
Install the package:
dotnet add package Franz.Common.EntityFramework
This package is part of a private framework. Contributions are limited to the internal team.
Licensed under the MIT License.
DbContextMultiDatabase (use DbContextBase instead).SaveEntitiesAsync (merged into SaveChangesAsync).DbContextBase.DbContextBase.EnumerationConverter with stricter typing constraints.EntityRepository and AggregateRepository.| 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. |
Showing the top 5 NuGet packages that depend on Franz.Common.EntityFramework:
| Package | Downloads |
|---|---|
|
Franz.Common.EntityFramework.MariaDB
Shared utility library for the Franz Framework. |
|
|
Franz.Common.EntityFramework.SQLServer
Shared utility library for the Franz Framework. |
|
|
Franz.Common.EntityFramework.PostGres
Shared utility library for the Franz Framework. |
|
|
Franz.Common.MongoDB
Shared utility library for the Franz Framework. |
|
|
Franz.Common.SSO
Shared utility library for the Franz Framework. |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.2.12 | 0 | 6/28/2026 |
| 2.2.11 | 0 | 6/28/2026 |
| 2.2.10 | 0 | 6/28/2026 |
| 2.2.9 | 0 | 6/28/2026 |
| 2.2.8 | 43 | 6/28/2026 |
| 2.2.7 | 215 | 6/7/2026 |
| 2.2.6 | 215 | 6/6/2026 |
| 2.2.5 | 220 | 6/4/2026 |
| 2.2.4 | 207 | 6/3/2026 |
| 2.2.3 | 203 | 6/2/2026 |
| 2.2.2 | 201 | 6/2/2026 |
| 2.2.1 | 206 | 5/24/2026 |
| 2.1.4 | 192 | 4/27/2026 |
| 2.1.3 | 175 | 4/26/2026 |
| 2.1.2 | 177 | 4/26/2026 |
| 2.1.1 | 188 | 4/22/2026 |
| 2.0.2 | 186 | 3/30/2026 |
| 2.0.1 | 180 | 3/29/2026 |
| 1.7.8 | 189 | 3/2/2026 |
| 1.7.7 | 198 | 1/31/2026 |