redb.Postgres.Pro 4.4.2

Prefix Reserved
dotnet add package redb.Postgres.Pro --version 4.4.2
                    
NuGet\Install-Package redb.Postgres.Pro -Version 4.4.2
                    
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="redb.Postgres.Pro" Version="4.4.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="redb.Postgres.Pro" Version="4.4.2" />
                    
Directory.Packages.props
<PackageReference Include="redb.Postgres.Pro" />
                    
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 redb.Postgres.Pro --version 4.4.2
                    
#r "nuget: redb.Postgres.Pro, 4.4.2"
                    
#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 redb.Postgres.Pro@4.4.2
                    
#: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=redb.Postgres.Pro&version=4.4.2
                    
Install as a Cake Addin
#tool nuget:?package=redb.Postgres.Pro&version=4.4.2
                    
Install as a Cake Tool

RedBase Pro

Data Platform for .NET — the Pro engine of RedBase: SQL built in C#, a query planner, parallel materialization.

NuGet .NET Docs

RedBase Pro replaces the query engine of the open-source RedBase core. The API is the same: a project moves from Free to Pro by changing the packages and AddRedb to AddRedbPro.

Contents: Free and Pro · Packages · Quick Start · New in 4.4 · Supported Databases · Documentation · License


Free and Pro

Both editions take the same LINQ API: filters, nested fields, arrays and dictionaries, arithmetic, Sql.Function<T>(), aggregation, GroupBy, window functions, trees, lists, users and permissions. They differ in how a query runs.

Free Pro
Query engine SQL functions of the module installed in the database (PL/pgSQL, T-SQL, a native loadable extension on SQLite) SQL built in C# by the provider and sent as one statement
Materialization of Props sequential parallel
Query planner (EnablePvtPrefilter) no yes, on by default: the streams form reads a page, a count or an aggregate without pivoting every object of the scheme
PropsSaveStrategy.ChangeTracking no (DeleteInsert only) yes: a save writes only the values that changed
Data migrations of Props classes no IRedbMigration<T>, MigrateAsync, AddRedbMigrations()
Distinct() by object one object per Props hash
SQLite needs the native extension pure C#: Blazor WebAssembly and mobile (MAUI)
Free:  LINQ → SQL module in the database → rows as JSON → Props
Pro:   LINQ → SQL built in C# → rows → Props, materialized in parallel

Packages

Package NuGet Description
redb.Core.Pro NuGet Pro engine, change tracking, data migrations
redb.Postgres.Pro NuGet PostgreSQL Pro provider
redb.MSSql.Pro NuGet SQL Server Pro provider
redb.SQLite.Pro NuGet SQLite Pro provider — pure C#, no native extension: Blazor WebAssembly & mobile
dotnet add package redb.Postgres.Pro   # or redb.MSSql.Pro, redb.SQLite.Pro

Each provider package brings redb.Core.Pro as a transitive dependency.

Quick Start

using redb.Core;
using redb.Core.Models.Configuration;
using redb.Core.Pro.Extensions;      // AddRedbPro
using redb.Postgres.Pro.Extensions;  // UsePostgres; or redb.MSSql.Pro.Extensions, redb.SQLite.Pro.Extensions

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddRedbPro(options => options
    .UsePostgres("Host=localhost;Database=mydb;Username=postgres;Password=pass")
    // .UseMsSql("Server=localhost;Database=mydb;User Id=sa;Password=pass;TrustServerCertificate=true")
    // .UseSqlite("Data Source=app.db")
    .Configure(c =>
    {
        c.PropsSaveStrategy = PropsSaveStrategy.ChangeTracking;
        c.EnablePropsCache = true;
    }));

var app = builder.Build();
var redb = app.Services.GetRequiredService<IRedbService>();
await redb.InitializeAsync();

var results = await redb.Query<EmployeeProps>()
    .Where(e => e.Salary > 75000m)
    .Take(100)
    .ToListAsync();

// Window functions — from E132_WindowRowNumber.cs
var ranked = await redb.Query<EmployeeProps>()
    .WithWindow(w => w
        .PartitionBy(x => x.Department)
        .OrderByDesc(x => x.Salary))
    .SelectAsync(x => new
    {
        Name = x.Props.FirstName,
        Department = x.Props.Department,
        Salary = x.Props.Salary,
        Rank = Win.RowNumber()
    });

New in 4.4

Pro query engine:

  • A window with Take, Skip and OrderBy returns the page; the window is computed over the whole filtered set on the fields it needs, and the other selected fields are read only for the rows returned. The same holds over a tree (TreeQuery(...).Take(...).WithWindow(...)), and Win.Ntile(n) over a tree uses n.
  • AnyAsync over a tree stops at the first matching node.
  • DistinctBy over a tree is faster on SQL Server and SQLite; DistinctBy keeps the ordering of the query, and CountAsync after DistinctBy counts the keys.

Both editions (core):

  • Schema work at start-up and scheme synchronization run under a schema lock, so nodes sharing one database start together (SchemaLockTimeout).
  • IRedbService.SchemaProblems and CheckSchemaAsync() report problems of the schema that need a person, for a health check.
  • The tree services read a subtree or a chain of ancestors in one statement; several tree filters in one query all apply.

The full list is in CHANGELOG.md; what to check when upgrading is in UPGRADING.md.

Free — no license key

All Pro features work out of the box — no license key required (starting from version 3.3.0). Install the Pro packages and use them, in development and in production alike. Pro is proprietary (closed-source) software, distributed free of charge.

Supported Databases

Database Version Package
PostgreSQL 14+ redb.Postgres.Pro
SQL Server 2019+ redb.MSSql.Pro
SQLite 3.44+ redb.SQLite.Pro — pure C#, runs in Blazor WebAssembly & mobile (MAUI)

Target frameworks: .NET 8.0 (LTS), .NET 9.0, .NET 10.0.

Documentation

Resource Link
Website & Docs redbase.app
Architecture (deep dive) redbase.app/architecture
RedBase (Free edition, full API) README.md
Upgrading UPGRADING.md
Changelog CHANGELOG.md

License

RedBase Pro is proprietary software (closed-source), distributed free of charge — no license key required starting from version 3.3.0. The license terms (LICENSE-PRO.txt) ship in every Pro package.

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 is compatible.  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 is compatible.  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 (1)

Showing the top 1 NuGet packages that depend on redb.Postgres.Pro:

Package Downloads
redb.Tsak.Core

Kernel of redb.Tsak — runtime container for redb.Route contexts. Provides hot-reload module loading, REST management API, scheduler, monitoring, security and pluggable cluster bootstrap.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
4.4.2 68 10/23/2026
4.4.1 83 10/21/2026
4.3.0 158 10/14/2026
4.2.2 169 10/5/2026
4.2.0 162 9/30/2026
4.1.1 167 9/24/2026
4.1.0 168 9/21/2026
4.0.1 161 9/18/2026
4.0.0 193 9/11/2026
3.7.2 211 8/26/2026
3.7.1 180 8/26/2026
3.6.0 179 8/13/2026
3.5.0 215 8/6/2026
3.4.0 198 7/27/2026
3.3.3 235 7/16/2026
3.3.0 479 7/8/2026
3.2.0 204 6/29/2026
3.0.0 223 5/29/2026
Loading failed