A .NET solution of lightweight, composable libraries for working with expression trees and specifications. It provides serializable equivalents of System.Linq.Expressions, abstractions for mapping and serialization, and an implementation of the Specification pattern.
Komair provides:
-
Expressions — A .NET library providing serializable equivalents of the
System.Linq.Expressionsnamespace (Komair.Expressions). -
Expression serialization — Abstractions and concrete implementations for serializing expression nodes (
Komair.Expressions.Serialization,Komair.Expressions.Serialization.Json). -
Expression mapping — Abstractions and Mapster-based implementations for mapping between expression representations (
Komair.Expressions.Mapping,Komair.Expressions.Mapping.Mapster). -
Specifications — A .NET implementation of the Specification pattern (
Komair.Specifications). -
Specifications + EF Core — Optional
IQueryable<T>helpers that compose specifications with Entity Framework Core (Komair.Specifications.EntityFrameworkCore). -
Validation bridge adapters — Optional adapters that project shared rules to FluentValidation and DataAnnotations (
Komair.Specifications.Validation.*).
| Folder | Contents |
|---|---|
| src | NuGet-ready class libraries (net10.0). Each package may be published independently. |
| test | Unit test projects aligned to the source projects. |
- Sample index:
samples/validation-bridge-end-to-end.md -
AbstractValidator<T>integration example:samples/validation-bridge-fluentvalidator-class.md - DataAnnotations class integration example:
samples/validation-bridge-dataannotations-class.md
dotnet build
dotnet test