![]() |
VOOZH | about |
dotnet add package Franz.Common.Business --version 2.2.7
NuGet\Install-Package Franz.Common.Business -Version 2.2.7
<PackageReference Include="Franz.Common.Business" Version="2.2.7" />
<PackageVersion Include="Franz.Common.Business" Version="2.2.7" />Directory.Packages.props
<PackageReference Include="Franz.Common.Business" />Project file
paket add Franz.Common.Business --version 2.2.7
#r "nuget: Franz.Common.Business, 2.2.7"
#:package Franz.Common.Business@2.2.7
#addin nuget:?package=Franz.Common.Business&version=2.2.7Install as a Cake Addin
#tool nuget:?package=Franz.Common.Business&version=2.2.7Install as a Cake Tool
A core infrastructure library of the Franz Framework, designed to support Domain-Driven Design (DDD), CQRS, and Event-Sourcing-ready architectures in modern .NET applications.
It provides a clean, deterministic, and production-grade foundation for building scalable business systems with strong separation of concerns.
Current Version: v2.2.7
Franz.Common.Business enforces the following principles:
All domain entities derive from a unified base:
public abstract class Entity<TId> : IEntity
{
public TId Id { get; private set; } = default!;
protected Entity() { }
protected Entity(TId id)
{
Id = id;
}
public object GetId() => Id!;
}
Guid or int)Guid V7 (default standard)int (database-generated identities)public interface IIdGenerator<TId>
{
TId Create();
}
public sealed class GuidV7Generator : IIdGenerator<Guid>
{
public Guid Create() => Guid.CreateVersion7();
}
Entities must be created through controlled factories.
public interface IEntityFactory<TId, TEntity>
where TEntity : Entity<TId>
{
TEntity Create();
}
IIdGenerator<TId>new Entity() misuse)Repositories are identity-agnostic and persistence-only abstractions.
public interface IEntityRepository<TEntity>
where TEntity : class, IEntity
{
Task<TEntity> GetByIdAsync(object id, CancellationToken cancellationToken = default);
Task AddAsync(TEntity entity, CancellationToken cancellationToken = default);
Task UpdateAsync(TEntity entity, CancellationToken cancellationToken = default);
Task DeleteAsync(TEntity entity, CancellationToken cancellationToken = default);
}
TIdGuid and int primary keysSupports event-driven state mutation:
public abstract class AggregateRoot<TEvent> : Entity<Guid>
where TEvent : IEvent
{
protected void RaiseEvent(TEvent @event) { }
public void ReplayEvents(IEnumerable<TEvent> events) { }
public void Rehydrate(Guid id, IEnumerable<TEvent> events) { }
}
All events implement:
public interface IDomainEvent : IEvent
{
Guid EventId { get; }
DateTimeOffset OccurredOn { get; }
string? CorrelationId { get; }
Guid? AggregateId { get; }
string AggregateType { get; }
string EventType { get; }
}
Built-in support for:
ICommandHandler)IQueryHandler)Production-ready pipeline support:
services.AddBusiness(applicationAssembly);
services.AddBusinessPlatform();
IIdGenerator<Guid>IEntityFactory<,>Guid.NewGuid())IIdGenerator<TId> for identityDomain Layer
โโโ Entities (Entity<TId>)
โโโ Aggregates
โโโ Value Objects
โโโ Domain Events
Factory Layer
โโโ IEntityFactory<TId, TEntity>
Identity Layer
โโโ IIdGenerator<TId>
Persistence Layer
โโโ IEntityRepository<TEntity>
Application Layer
โโโ CQRS + Mediator
Bootstrap Layer
โโโ AddBusiness()
SetId eliminated)Franz.Common.Business v2.0.3 provides a:
โ deterministic โ factory-driven โ EF Core compatible โ DDD-aligned โ CQRS-ready
foundation for enterprise-grade .NET applications.
This library enforces architectural discipline by design, not convention.
It ensures that:
---
| 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.Business:
| Package | Downloads |
|---|---|
|
Franz.Common.Serialization
Shared utility library for the Franz Framework. |
|
|
Franz.Common.Messaging
Shared utility library for the Franz Framework. |
|
|
Franz.Common.EntityFramework
Shared utility library for the Franz Framework. |
|
|
Franz.Common.Bootstrap
Shared utility library for the Franz Framework. |
|
|
Franz.Common.MongoDB
Shared utility library for the Franz Framework. |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.2.7 | 458 | 6/7/2026 |
| 2.2.6 | 464 | 6/6/2026 |
| 2.2.5 | 468 | 6/4/2026 |
| 2.2.4 | 454 | 6/3/2026 |
| 2.2.3 | 445 | 6/2/2026 |
| 2.2.2 | 444 | 6/2/2026 |
| 2.2.1 | 471 | 5/24/2026 |
| 2.1.4 | 364 | 4/27/2026 |
| 2.1.3 | 340 | 4/26/2026 |
| 2.1.2 | 348 | 4/26/2026 |
| 2.1.1 | 356 | 4/22/2026 |
| 2.0.2 | 368 | 3/30/2026 |
| 2.0.1 | 347 | 3/29/2026 |
| 1.7.8 | 365 | 3/2/2026 |
| 1.7.7 | 390 | 1/31/2026 |
| 1.7.6 | 393 | 1/22/2026 |
| 1.7.5 | 360 | 1/10/2026 |
| 1.7.4 | 377 | 12/27/2025 |
| 1.7.3 | 468 | 12/22/2025 |
| 1.7.2 | 450 | 12/21/2025 |