API reference
Packages and assemblies
The Kiwi ORM assemblies, what each contains, their target frameworks and which edition they belong to.
| 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.