Skip to content

Latest commit

 

History

History
90 lines (60 loc) · 3.5 KB

File metadata and controls

90 lines (60 loc) · 3.5 KB
SharpCoreDB Logo

SharpCoreDB.Extensions

Dapper Integration · Health Checks · Repository Pattern · Bulk Operations · Performance Monitoring · FluentMigrator

Version: 1.9.5
Status: Production Ready ✅

License: MIT .NET C# NuGet


Convenience extensions package for SharpCoreDB.

Patch updates in v1.9.5

  • Parameterized query binding fixed (Issue #336): named-parameter binding is token-aware, so parameter names that are prefixes of others (e.g. @t vs @tid) no longer corrupt the SQL.
  • Server parameter pass-through fixed (Issue #337): request.Parameters are forwarded on gRPC, the binary (PostgreSQL) protocol and WebSocket.
  • ULID encoding is now standards-compliant: ULIDs follow the official Crockford Base32 spec and are interchangeable with Python/Java/Go implementations.
  • NuGet dependencies updated to their latest stable versions.
  • ✅ Aligned package metadata and version references to the synchronized 1.9.5 release line.
  • ✅ Release automation now publishes all packable SharpCoreDB packages in CI/CD.
  • ASP.NET Core health check integration
  • FluentMigrator integration hooks (optional)
  • Repository/bulk utility helpers for common workflows
  • Extension points for developer productivity in .NET applications

FluentMigrator

AddSharpCoreDBFluentMigrator() uses FluentMigrator's SQLite generator by default and now also defaults the processor to SQLite syntax compatibility.

This means SQLite-specific migration restrictions are enforced automatically for the standard registration path, which matches the generated SQL dialect and avoids unsupported DDL slipping through at runtime.

services.AddSharpCoreDB();
services.AddSingleton<DatabaseFactory>();
services.AddSingleton<IDatabase>();
services.AddSharpCoreDBFluentMigrator();

Default behavior

With the default registration:

  • FluentMigrator generator id defaults to sqlite
  • processor ProviderSwitches defaults to syntax=sqlite
  • SQLite-incompatible operations such as ALTER COLUMN, CREATE SEQUENCE, and ALTER TABLE ... ADD CONSTRAINT are rejected with a clear NotSupportedException

Override behavior

If you need a different syntax mode, configure ProcessorOptions.ProviderSwitches explicitly after registration.

services.AddSharpCoreDBFluentMigrator();
services.Configure<ProcessorOptions>(options =>
{
    options.ProviderSwitches = "syntax=postgresql";
});

Explicit configuration is preserved and is not overwritten by the extension.

Changes in v1.9.5

  • Package/docs synchronized to v1.9.5
  • Guidance updated for optional migration/health scenarios
  • FluentMigrator now defaults to SQLite syntax compatibility when using AddSharpCoreDBFluentMigrator()
  • Inherits core reliability improvements from SharpCoreDB v1.9.5

Installation

dotnet add package SharpCoreDB.Extensions --version 2.0.0.0

Documentation

  • docs/INDEX.md
  • src/SharpCoreDB.Extensions/NuGet.README.md