FluxFlow.Components.Storage.SqlFile
1.1.0
See the version list below for details.
dotnet add package FluxFlow.Components.Storage.SqlFile --version 1.1.0
NuGet\Install-Package FluxFlow.Components.Storage.SqlFile -Version 1.1.0
<PackageReference Include="FluxFlow.Components.Storage.SqlFile" Version="1.1.0" />
<PackageVersion Include="FluxFlow.Components.Storage.SqlFile" Version="1.1.0" />
<PackageReference Include="FluxFlow.Components.Storage.SqlFile" />
paket add FluxFlow.Components.Storage.SqlFile --version 1.1.0
#r "nuget: FluxFlow.Components.Storage.SqlFile, 1.1.0"
#:package FluxFlow.Components.Storage.SqlFile@1.1.0
#addin nuget:?package=FluxFlow.Components.Storage.SqlFile&version=1.1.0
#tool nuget:?package=FluxFlow.Components.Storage.SqlFile&version=1.1.0
FluxFlow.Components.Storage.SqlFile
Single-file SQL storage adapter for FluxFlow.Components.Storage.
This package does not add workflow nodes. It provides an IStorageStore
implementation and registration helpers for the existing storage nodes:
storage.putstorage.getstorage.querystorage.delete
Register
var registry = new RuntimeNodeFactoryRegistry()
.RegisterStorageComponents(options => options
.UseSqlFileStorage(new SqlFileStorageStoreOptions
{
DatabasePath = "data/storage.db",
DefaultCollection = "items"
}));
Set StorageComponentOptions.UseClock(...) when node results and adapter
records should share a deterministic time source. SqlFileStorageStore also
accepts SqlFileStorageStoreOptions.Clock for direct store use or an
adapter-specific override.
Behavior
- one record table per database file
- store, collection, and key primary key
- create, replace, and upsert write modes
- optimistic version checks through
ExpectedVersion - expiration honored by
storage.getandstorage.query - query by collection, key prefix, attributes, stored time bounds, expiration, offset, and limit
- owned store lifetime when created through
UseSqlFileStorage
The adapter is intended for single-machine workflows, service hosts, and desktop apps that need a durable local store with stronger coordination than per-record JSON files.
Options
| Option | Purpose |
|---|---|
DatabasePath |
Required database file path. |
StoreName |
Optional fallback store name when the node does not set store. |
CreateDatabase |
Allows creating the database file when it does not exist. |
CreateDirectory |
Creates the parent directory when it does not exist. |
AllowAbsoluteDatabasePath |
Allows absolute database path values. |
MaxValueBytes |
Rejects values whose serialized JSON exceeds the limit. |
DefaultCollection |
Optional fallback collection. |
BusyTimeoutMilliseconds |
Wait time for a locked database before failing. |
Clock |
Optional direct-store time source override. |
The package persists only neutral StorageRecord data. Hosts that need exact
payload shaping should compose serialization or payload nodes before storage.
| 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
- FluxFlow.Components.Storage (>= 1.1.0)
- Microsoft.Data.Sqlite (>= 8.0.27)
-
net8.0
- FluxFlow.Components.Storage (>= 1.1.0)
- Microsoft.Data.Sqlite (>= 8.0.27)
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 |
|---|---|---|
| 6.0.0-rc.1 | 87 | 9/5/2026 |
| 5.0.0 | 140 | 8/3/2026 |
| 3.3.5 | 118 | 7/3/2026 |
| 3.3.4 | 116 | 7/2/2026 |
| 3.0.0 | 122 | 6/19/2026 |
| 2.0.0 | 144 | 6/18/2026 |
| 1.1.0 | 127 | 6/12/2026 |
| 1.0.0 | 130 | 6/4/2026 |
| 0.3.0-alpha.1 | 75 | 6/3/2026 |
| 0.2.0-alpha.1 | 80 | 6/2/2026 |
| 0.1.0-alpha.1 | 83 | 6/2/2026 |
Put results now carry the persisted millisecond-precision timestamps so re-reads and time-window queries agree, expired records no longer block Create-mode writes, key-prefix and paging filters are pushed into SQL, and dispose clears the connection pool so the database file is released.