Incursa.Platform.Postgres
2026.3.9.853
dotnet add package Incursa.Platform.Postgres --version 2026.3.9.853
NuGet\Install-Package Incursa.Platform.Postgres -Version 2026.3.9.853
<PackageReference Include="Incursa.Platform.Postgres" Version="2026.3.9.853" />
<PackageVersion Include="Incursa.Platform.Postgres" Version="2026.3.9.853" />
<PackageReference Include="Incursa.Platform.Postgres" />
paket add Incursa.Platform.Postgres --version 2026.3.9.853
#r "nuget: Incursa.Platform.Postgres, 2026.3.9.853"
#:package Incursa.Platform.Postgres@2026.3.9.853
#addin nuget:?package=Incursa.Platform.Postgres&version=2026.3.9.853
#tool nuget:?package=Incursa.Platform.Postgres&version=2026.3.9.853
Incursa.Platform.Postgres
PostgreSQL provider for Incursa.Platform: outbox, inbox, scheduler, fanout, metrics, leases, and semaphores.
Install
dotnet add package Incursa.Platform.Postgres
Usage
Single-call platform registration
Register the full PostgreSQL-backed platform stack (outbox/inbox/scheduler/fanout/idempotency, audit, operations, email outbox + delivery, metrics exporter, leases, semaphores) with one call:
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddPostgresPlatform(
"Host=localhost;Database=MyApp;Username=app;Password=secret;",
options =>
{
options.EnableSchemaDeployment = true;
options.EnableSchedulerWorkers = true;
});
var app = builder.Build();
Use the ConfigureOutbox, ConfigureInbox, and ConfigureScheduler delegates on
PostgresPlatformOptions for per-component tuning while keeping a single public entry point.
Examples
One-time execution registry
Use xref:Incursa.Platform.OnceExecutionRegistry to guard idempotent startup tasks or DI registrations.
var registry = new OnceExecutionRegistry();
if (!registry.CheckAndMark("platform:di"))
{
builder.Services.AddPostgresPlatform("Host=localhost;Database=MyApp;Username=app;Password=secret;");
}
if (registry.HasRun("platform:di"))
{
logger.LogInformation("Platform services already registered.");
}
Discovery-based registration
builder.Services.AddSingleton<IPlatformDatabaseDiscovery>(new MyTenantDiscovery());
builder.Services.AddPostgresPlatformMultiDatabaseWithDiscovery(enableSchemaDeployment: true);
Documentation
- https://github.com/incursa/platform
- docs/INDEX.md
- docs/outbox-quickstart.md
- docs/inbox-quickstart.md
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
net10.0
- Cronos (>= 0.11.1)
- Dapper (>= 2.1.66)
- dbup-postgresql (>= 6.1.5)
- Incursa.Platform (>= 2026.3.9.853)
- Incursa.Platform.Audit (>= 2026.3.9.853)
- Incursa.Platform.Correlation (>= 2026.3.9.853)
- Incursa.Platform.Idempotency (>= 2026.3.9.853)
- Incursa.Platform.Operations (>= 2026.3.9.853)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 10.0.2)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.2)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.2)
- Microsoft.Extensions.Options (>= 10.0.2)
- Npgsql (>= 10.0.1)
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 |
|---|
For support, contact nuget@incursa.com