Skip to main content
net10.0

SQL Server provider for Koan relational data with JSON-projection pushdowns, guardrails, and governance.

Published
May 16, 2026
5mo ago
Total Downloads
3.9K
3,943

Install

dotnet add package Sylin.Koan.Data.Connector.SqlServer --version 0.8.0
ProductVersions
.NET
net10.0

README

Sylin.Koan.Data.Connector.SqlServer

SQL Server provider for Koan relational data with safe defaults, pushdowns, and schema helpers.

  • Target framework: net9.0
  • License: Apache-2.0

Capabilities

  • Connection + health integration with minimal options
  • JSON projection and filter/paging pushdowns where supported
  • Schema helpers via Koan.Data.Relational (add-only create/index)
  • Paging and streaming semantics aligned with DATA-0061

Install

dotnet add package Sylin.Koan.Data.Connector.SqlServer

Minimal setup

  • Configure a connection using first-win resolution:
    • ConnectionStrings:Default (or a named source)
    • Koan:Data:Sources:Default:ConnectionString
    • Koan:Data:SqlServer:ConnectionString
  • Bind options once at startup; keep credentials in secret stores.

Usage - safe snippets

  • Prefer first-class model statics from your entity models:
    • Item.FirstPage(50, ct) and then Item.Page(cursor, ct)
    • Item.Query(x => x.Status == "Open", ct)
    • await foreach (var i in Item.QueryStream(x => x.Flag, ct)) { ... }
  • Avoid unbounded materialization; use paging or streaming for large sets.
// Page through items
var page = await Item.FirstPage(50, ct);
foreach (var row in page.Items) { /* ... */ }
while (page.HasMore) {
	page = await Item.Page(page.Cursor, ct);
}

See TECHNICAL.md for contracts, options, and pushdown notes.

References

  • Paging/Streaming decision: ~/decisions/DATA-0061-data-access-pagination-and-streaming.md
  • Data access reference: ~/reference/data-access.md
  • Engineering front door: ~/engineering/index.md

Adoption Assessment

Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.

Compatibility metadata lists 1 target framework; confirm the exact target used by your application.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.