SqlBound 1.0.0-rc.1
dotnet add package SqlBound --version 1.0.0-rc.1
NuGet\Install-Package SqlBound -Version 1.0.0-rc.1
<PackageReference Include="SqlBound" Version="1.0.0-rc.1" />
<PackageVersion Include="SqlBound" Version="1.0.0-rc.1" />
<PackageReference Include="SqlBound" />
paket add SqlBound --version 1.0.0-rc.1
#r "nuget: SqlBound, 1.0.0-rc.1"
#:package SqlBound@1.0.0-rc.1
#addin nuget:?package=SqlBound&version=1.0.0-rc.1&prerelease
#tool nuget:?package=SqlBound&version=1.0.0-rc.1&prerelease

SqlBound
Compile-time verified SQL for .NET. SqlBound checks your SQL against a real database schema at build time and materializes rows with a Roslyn source generator — no runtime reflection, no IL emit, Native AOT- and trimming-compatible.
It is designed to coexist with Dapper on the same DbConnection and DbTransaction: SqlBound
targets static, build-time-known queries; Dapper stays the tool for runtime-composed SQL. SqlBound
never owns or wraps connections and defines no Query*/Execute* extension methods, so the two
libraries share a project without conflict.
Example
using System.Data.Common;
using SqlBound;
public static partial class ItemQueries
{
[SqlQuery("SELECT Id FROM dbo.Items")]
public static partial Task<IReadOnlyList<int>> GetIdsAsync(DbConnection connection);
}
The generator emits straight-line DbDataReader code. The sqlbound prepare CLI step verifies each
query against your schema and commits an offline JSON snapshot, so the in-IDE analyzer validates
without a live database connection.
Packages
| Package | Purpose |
|---|---|
SqlBound |
Runtime core (dependency-free). |
SqlBound.Generators |
Source generator + analyzer (build-time only). |
SqlBound.Introspection |
Provider-neutral introspection contracts. |
SqlBound.Migrations |
SQL-file migration model and ledger. |
SqlBound.SqlServer · .Sqlite · .Npgsql · .MySql |
Per-provider introspection and type mapping. |
sqlbound (dotnet tool) |
CLI: prepare, verify, migrate, database. |
Providers
SQL Server, SQLite, PostgreSQL, and MySQL — query verification, reflection-free materialization, and SQL-file migrations, each reflecting what the underlying engine actually supports.
Documentation
- Guides, provider matrix, and API reference: https://lgamorim.github.io/sqlbound/
- Source, issues, and changelog: https://github.com/lgamorim/sqlbound
License
Copyright 2026 Luís Amorim. Licensed under the Apache License 2.0.
| Product | Versions 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 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
- No dependencies.
-
net8.0
- No dependencies.
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-rc.1 | 120 | 7/13/2026 |