API reference

Packages and assemblies

The Kiwi ORM assemblies, what each contains, their target frameworks and which edition they belong to.

ORM Current 2 min read Updated

Assembly Contains Targets Edition
Kiwify.Kiwi.ORM.Abstractions Attributes (TableInfo, ColumnInfo, ForeignKey, Auditable, Sensitive), the database-context and the auditing hooks (IAuditAdapter, AuditContext, RawSqlAuditContext) .NET Standard 2.1 Free
Kiwify.Kiwi.ORM.Core The typed pipeline, DatabaseContext, entities, fluent select, insert, update and delete, stored procedures, transactions, KMQL, and the database specifications for all supported engines .NET Standard 2.1 Free
Kiwify.Kiwi.ORM.Cte WithCte and WithRecursiveCte builders and a CTE provider per engine .NET Standard 2.1 Commercial
Kiwify.Kiwi.ORM.SourceGenerators and ...SourceGenerators.Attributes Roslyn source generator that produces entity properties from fields (GenerateEntity, Column, NavList, NavRef, RefKey, NotMapped) .NET Standard 2.1 Free
Kiwify.Kiwi.ORM.Tooling.Cli The kiwi orm commands for entity generation and migrations .NET 10 Free
Kiwify.Kiwi.ORM.Repository Repository mode: IKiwiRepository<TEntity, TKey>, KiwiRepositoryFactory, derived queries and the SQL cache .NET Standard 2.1 and .NET 8 Commercial
Kiwify.Kiwi.ORM.Repository.DependencyInjection AddKiwiRepository and AddKiwiRepositoriesFrom... registration extensions .NET 6 Commercial
Kiwify.Kiwi.ORM.Auditing.Adapters.Rdbms Audit trail stored in a relational database (EnableDefaultAuditing, EnableRdbmsAuditing) .NET Standard 2.1 Commercial
Kiwify.Kiwi.ORM.Auditing.Adapters.MongoDb Audit trail stored in MongoDB (an audit store only, not a data source) .NET Standard 2.1 Commercial

The auditing hooks are in the free Abstractions assembly. The ready-made adapters and their extension methods only appear when the commercial package is referenced.

Supporting projects#

Kiwify.Kiwi.ORM.Benchmarks and Kiwify.Kiwi.ORM.Benchmarks.Cte are the benchmark applications described in Performance. Kiwify.Kiwi.ORM.Tests and Kiwify.Kiwi.ORM.Tooling.Tests are the automated test suites; the tooling tests compile generated code with Roslyn against the real ORM assemblies and run migration tests against live servers when connection strings are supplied.

Getting the packages#

Kiwi ORM is distributed under a source-available licence. Request access from Kiwify Labs for the source and, if you need the commercial packages, for the Enterprise edition.