Plinth.Storage
1.8.0
Prefix Reserved
See the version list below for details.
dotnet add package Plinth.Storage --version 1.8.0
NuGet\Install-Package Plinth.Storage -Version 1.8.0
<PackageReference Include="Plinth.Storage" Version="1.8.0" />
<PackageVersion Include="Plinth.Storage" Version="1.8.0" />
<PackageReference Include="Plinth.Storage" />
paket add Plinth.Storage --version 1.8.0
#r "nuget: Plinth.Storage, 1.8.0"
#:package Plinth.Storage@1.8.0
#addin nuget:?package=Plinth.Storage&version=1.8.0
#tool nuget:?package=Plinth.Storage&version=1.8.0
README
Plinth.Storage
A framework for reliably and securely storing large binary objects (BLOBs)
Provides a framework for abstracting storage of large objects/files. Supports storing the data in a database, on the file system, AWS S3, or Azure Blobs. An index table is maintained in the database with references to the underlying data storage. Also supports encryption and compression if desired.
- Plinth.Storage - the main engine, supports database and file system storage
- Plinth.Storage.MsSql - Install this when using Microsoft SQL Server for the index
- Plinth.Storage.PgSql - Install this when using PostgreSQL for the index
- Plinth.Storage.AWS - Install for AWS S3 support
- Plinth.Storage.Azure - Install for Azure Blob support
Example setting up Blob Storage to write to S3 with Encryption (Startup.cs)
// Startup.cs in ConfigureServices
ISecureData secureData = new SecureData(key);
var factory = new StorageFactory(secureData, BlobFeatures.Encrypted);
factory.AddS3Provider(new S3Settings()
{
BucketName = "my-bucket",
ClientId = "...",
ClientSecret = "...",
S3Url = "https://s3-us-west-2.amazonaws.com"
});
factory.SetDefaultWriteProviderAsS3();
services.AddSingleton(factory);
In controller or manager with ISqlConnection and StorageFactory as injected or created parameters
var blobStorage = storageFactory.Get(connection, callingUser);
var blob = await blobStorage.ReadBlobAsync(blobGuid);
var newBlob = new Blob() { ... }
var newBlobGuid = await blobStorage.CreateNewBlobAsync(newBlob);
| 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 is compatible. 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
- Plinth.Common (>= 1.8.0)
- Plinth.Security (>= 1.8.0)
-
net8.0
- Plinth.Common (>= 1.8.0)
- Plinth.Security (>= 1.8.0)
- System.Text.Json (>= 10.0.0)
-
net9.0
- Plinth.Common (>= 1.8.0)
- Plinth.Security (>= 1.8.0)
- System.Text.Json (>= 10.0.0)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on Plinth.Storage:
| Package | Downloads |
|---|---|
|
Plinth.Storage.MSSql
SQL Server driver for Plinth.Storage |
|
|
Plinth.Storage.AWS
Plinth AWS Provider for Blob Storage |
|
|
Plinth.Storage.Azure
Plinth Azure Providers for Blob Storage |
|
|
Plinth.Storage.PgSql
PostgreSQL driver for Plinth.Storage |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.8.1 | 191 | 12/11/2025 |
| 1.8.0 | 354 | 11/13/2025 |
| 1.8.0-b211.72089fd9 | 247 | 11/12/2025 |
| 1.7.4 | 441 | 8/6/2025 |
| 1.7.3 | 169 | 8/2/2025 |
| 1.7.2 | 365 | 3/16/2025 |
| 1.7.1 | 853 | 12/12/2024 |
| 1.7.0 | 695 | 11/12/2024 |
| 1.6.6 | 300 | 11/8/2024 |
| 1.6.5 | 409 | 8/31/2024 |
| 1.6.4 | 272 | 8/2/2024 |
| 1.6.3 | 305 | 5/15/2024 |
| 1.6.2 | 351 | 2/16/2024 |
| 1.6.1 | 3,056 | 1/5/2024 |
| 1.6.0 | 400 | 11/30/2023 |
| 1.5.10-b186.aca976b4 | 158 | 11/30/2023 |
| 1.5.9 | 342 | 11/29/2023 |
| 1.5.9-b174.64153841 | 153 | 11/23/2023 |
| 1.5.9-b172.dfc6e7bd | 138 | 11/17/2023 |
| 1.5.9-b171.4e2b92e2 | 127 | 11/4/2023 |
| 1.5.8 | 406 | 10/23/2023 |
| 1.5.7 | 844 | 7/31/2023 |
| 1.5.6 | 1,655 | 7/13/2023 |
| 1.5.5 | 482 | 6/29/2023 |
| 1.5.4 | 1,461 | 3/7/2023 |
| 1.5.3 | 723 | 3/3/2023 |
| 1.5.2 | 879 | 1/11/2023 |
| 1.5.2-b92.7c961f5f | 250 | 1/11/2023 |
| 1.5.0 | 1,105 | 11/9/2022 |
| 1.5.0-b88.7a7c20cd | 239 | 11/9/2022 |
| 1.4.7 | 1,687 | 10/20/2022 |
| 1.4.6 | 1,597 | 10/17/2022 |
| 1.4.5 | 1,532 | 10/1/2022 |
| 1.4.4 | 1,638 | 8/16/2022 |
| 1.4.3 | 1,502 | 8/2/2022 |
| 1.4.2 | 1,590 | 7/19/2022 |
| 1.4.2-b80.7fdbfd04 | 267 | 7/19/2022 |
| 1.4.2-b74.acaf86f5 | 275 | 6/15/2022 |
| 1.4.1 | 1,609 | 6/13/2022 |
| 1.4.0 | 1,582 | 6/6/2022 |
| 1.3.8 | 2,035 | 4/12/2022 |
| 1.3.7 | 1,608 | 3/21/2022 |
| 1.3.6 | 1,615 | 3/17/2022 |
| 1.3.6-b67.ca5053f3 | 263 | 3/16/2022 |
| 1.3.6-b66.4a9683e6 | 245 | 3/16/2022 |
| 1.3.5 | 1,628 | 2/23/2022 |
| 1.3.4 | 1,699 | 1/20/2022 |
| 1.3.3 | 1,228 | 12/29/2021 |
| 1.3.2 | 1,216 | 12/11/2021 |
| 1.3.1 | 1,125 | 11/12/2021 |
| 1.3.0 | 1,120 | 11/8/2021 |
| 1.2.3 | 2,322 | 9/22/2021 |
| 1.2.2 | 1,175 | 8/20/2021 |
| 1.2.1 | 1,140 | 8/5/2021 |
| 1.2.0 | 1,206 | 8/1/2021 |
| 1.2.0-b37.a54030b9 | 304 | 6/24/2021 |
| 1.1.6 | 1,218 | 3/22/2021 |
| 1.1.5 | 1,187 | 3/9/2021 |
| 1.1.4 | 1,247 | 2/27/2021 |
| 1.1.3 | 1,177 | 2/17/2021 |
| 1.1.2 | 1,178 | 2/12/2021 |
| 1.1.1 | 1,563 | 2/1/2021 |
| 1.1.0 | 1,232 | 12/16/2020 |
| 1.1.0-b27.b66c309b | 469 | 11/15/2020 |
| 1.0.12 | 1,889 | 10/18/2020 |
| 1.0.11 | 1,306 | 10/6/2020 |
| 1.0.10 | 1,338 | 9/30/2020 |
| 1.0.9 | 1,255 | 9/29/2020 |
| 1.0.8 | 1,447 | 9/26/2020 |
| 1.0.7 | 1,388 | 9/19/2020 |
| 1.0.6 | 1,303 | 9/3/2020 |
| 1.0.5 | 1,595 | 9/2/2020 |
| 1.0.4 | 1,483 | 9/1/2020 |
| 1.0.3 | 1,378 | 9/1/2020 |
| 1.0.2 | 1,410 | 8/29/2020 |
| 1.0.1 | 1,330 | 8/29/2020 |
| 1.0.0 | 1,341 | 8/29/2020 |
| 1.0.0-b1.c22f563d | 401 | 8/28/2020 |
net10.0 support