Incursa.Platform.SqlServer
2026.3.9.853
dotnet add package Incursa.Platform.SqlServer --version 2026.3.9.853
NuGet\Install-Package Incursa.Platform.SqlServer -Version 2026.3.9.853
<PackageReference Include="Incursa.Platform.SqlServer" Version="2026.3.9.853" />
<PackageVersion Include="Incursa.Platform.SqlServer" Version="2026.3.9.853" />
<PackageReference Include="Incursa.Platform.SqlServer" />
paket add Incursa.Platform.SqlServer --version 2026.3.9.853
#r "nuget: Incursa.Platform.SqlServer, 2026.3.9.853"
#:package Incursa.Platform.SqlServer@2026.3.9.853
#addin nuget:?package=Incursa.Platform.SqlServer&version=2026.3.9.853
#tool nuget:?package=Incursa.Platform.SqlServer&version=2026.3.9.853
Incursa.Platform.SqlServer
SQL Server provider for Incursa.Platform: outbox, inbox, scheduler, fanout, metrics, leases, and semaphores.
Install
dotnet add package Incursa.Platform.SqlServer
Usage
Single-call platform registration
Register the full SQL Server-backed platform stack (outbox/inbox/scheduler/fanout/idempotency, audit, operations, email outbox, metrics exporter, leases, semaphores, external side effects) with one call:
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddSqlPlatform(
"Server=localhost;Database=MyApp;Trusted_Connection=true;",
options =>
{
options.EnableSchemaDeployment = true;
options.EnableSchedulerWorkers = true;
});
var app = builder.Build();
Use the ConfigureOutbox, ConfigureInbox, and ConfigureScheduler delegates on
SqlPlatformOptions 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.AddSqlPlatform("Server=localhost;Database=MyApp;Trusted_Connection=true;");
}
if (registry.HasRun("platform:di"))
{
logger.LogInformation("Platform services already registered.");
}
Discovery-based registration
builder.Services.AddSingleton<IPlatformDatabaseDiscovery>(new MyTenantDiscovery());
builder.Services.AddSqlPlatformMultiDatabaseWithDiscovery(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 (>= 5.0.41)
- dbup-sqlserver (>= 6.0.16)
- Incursa.Platform (>= 2026.3.9.853)
- Incursa.Platform.Audit (>= 2026.3.9.853)
- Incursa.Platform.Idempotency (>= 2026.3.9.853)
- Incursa.Platform.Observability (>= 2026.3.9.853)
- Incursa.Platform.Operations (>= 2026.3.9.853)
- Microsoft.Data.SqlClient (>= 6.1.4)
- 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)
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 |
|---|---|---|
| 2026.3.9.853 | 0 | 3/9/2026 |
| 2026.3.9.100 | 28 | 3/9/2026 |
| 2026.3.6.320 | 111 | 3/6/2026 |
| 2026.3.4.1093 | 103 | 3/4/2026 |
| 2026.3.1.31 | 83 | 3/1/2026 |
| 2026.2.25.334 | 90 | 2/25/2026 |
| 2026.2.24.205 | 84 | 2/24/2026 |
| 2026.2.21.28 | 84 | 2/21/2026 |
| 2026.2.21.6 | 89 | 2/21/2026 |
| 2026.2.20.1418 | 89 | 2/20/2026 |
| 2026.2.20.1356 | 81 | 2/20/2026 |
| 2026.2.20.1343 | 87 | 2/20/2026 |
| 2026.2.20.908 | 88 | 2/20/2026 |
| 2026.2.20.310 | 96 | 2/20/2026 |
| 2026.2.20.132 | 88 | 2/20/2026 |
| 2026.2.20.82 | 86 | 2/20/2026 |
| 2026.2.19.224 | 88 | 2/19/2026 |
| 2026.2.19.203 | 89 | 2/19/2026 |
| 2026.2.19.92 | 89 | 2/19/2026 |
For support, contact nuget@incursa.com