EvaluatedApplications.HoloDb.Client 1.0.0

dotnet add package EvaluatedApplications.HoloDb.Client --version 1.0.0
                    
NuGet\Install-Package EvaluatedApplications.HoloDb.Client -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EvaluatedApplications.HoloDb.Client" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="EvaluatedApplications.HoloDb.Client" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="EvaluatedApplications.HoloDb.Client" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add EvaluatedApplications.HoloDb.Client --version 1.0.0
                    
#r "nuget: EvaluatedApplications.HoloDb.Client, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package EvaluatedApplications.HoloDb.Client@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=EvaluatedApplications.HoloDb.Client&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=EvaluatedApplications.HoloDb.Client&version=1.0.0
                    
Install as a Cake Tool

HoloDb.Client

The .NET client for a remote HoloDb server. It mirrors the in-process HoloDbService surface, so moving from embedded to networked changes only how you get the handle — the query API and the returned QueryResult are identical. Columnar results stay columnar over the wire (typed column arrays, not JSON).

Usage

using HoloDb.Client;

await using var db = await HoloDbClient.ConnectAsync("your-host", 5432, new HoloDbClientOptions
{
    AuthToken        = "s3cret",           // the server's --token
    PinnedThumbprint = "ABCD...",          // pin the server's TLS cert (printed by the server on start)
});

await db.ExecuteAsync("CREATE TABLE users (id INT PRIMARY KEY, age INT, name TEXT)");
await db.ExecuteAsync("INSERT INTO users VALUES (1, 30, 'Ada')");

var r = await db.ExecuteAsync("SELECT name FROM users WHERE age >= 18");
for (var i = 0; i < r.RowCount; i++) Console.WriteLine(r.GetText(i, 0));   // typed, no boxing

// column-native bulk load (no SQL parsing on either side)
await db.BulkLoadAsync("users", new[] { "id", "age", "name" },
    new Array[] { new long[] { 2, 3 }, new long[] { 25, 41 }, new[] { "Ben", "Cara" } }, count: 2);

One connection is one session: transactions (BEGIN / COMMIT / ROLLBACK sent as SQL) are scoped to it and requests are serialised, so use one client per concurrent worker. GetStatsAsync() returns server counters (uptime, connections, queries, commits, transaction aborts, WAL size).

The server is EvaluatedApplications.HoloDb.Server (run it directly or via the Docker image). For a dev server that mints a self-signed certificate, either pin the thumbprint it prints on startup or set AllowUntrustedCertificate = true (dev only).

License

Proprietary — this package ships the compiled library only. Every capability is free to use. See LICENSE. Copyright (c) 2026 Dongyang Stephen Chen, trading as Evaluated Applications. All rights reserved.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 52 8/15/2026