Novolis.Storage.AzureBlob
2026.1.1.58
dotnet add package Novolis.Storage.AzureBlob --version 2026.1.1.58
NuGet\Install-Package Novolis.Storage.AzureBlob -Version 2026.1.1.58
<PackageReference Include="Novolis.Storage.AzureBlob" Version="2026.1.1.58" />
<PackageVersion Include="Novolis.Storage.AzureBlob" Version="2026.1.1.58" />
<PackageReference Include="Novolis.Storage.AzureBlob" />
paket add Novolis.Storage.AzureBlob --version 2026.1.1.58
#r "nuget: Novolis.Storage.AzureBlob, 2026.1.1.58"
#:package Novolis.Storage.AzureBlob@2026.1.1.58
#addin nuget:?package=Novolis.Storage.AzureBlob&version=2026.1.1.58
#tool nuget:?package=Novolis.Storage.AzureBlob&version=2026.1.1.58
Novolis.Storage.AzureBlob
Typed JSON blob containers backed directly by Azure Blob Storage. A value's
IHasName.Name is its blob name. This package intentionally contains no Query
or Index dependency; it provides only named blob persistence.
Install
dotnet add package Novolis.Storage.AzureBlob
Prerequisites: .NET 10 SDK
(net10.0) and an Azure Blob Storage account or Azurite.
Quick start
using Microsoft.Extensions.DependencyInjection;
using Novolis.Storage.Abstractions;
using Novolis.Storage.AzureBlob;
services.AddStorage(builder => builder.AddAzureBlobStorage(options =>
{
options.ConnectionString = connectionString;
options.ContainerName = "documents";
}));
var blobs = serviceProvider.GetRequiredService<IBlobContainer<Document>>();
await blobs.UpsertAsync(new Document { Name = "welcome.json", Text = "Hello." });
var document = await blobs.TryGetAsync("welcome.json", cancellationToken);
await foreach (var item in blobs.ListAsync(cancellationToken))
{
}
Values are serialized with System.Text.Json. Configure
AzureBlobStorageOptions.SerializerOptions when a different JSON policy is
needed. ContainerName must be a valid Azure container name, while blob names
may use Azure's normal hierarchical naming conventions.
public sealed class Document : IHasName
{
public string Name { get; init; } = string.Empty;
public string Text { get; init; } = string.Empty;
}
API
| Type | Role |
|---|---|
IHasName |
Stable name contract from Novolis.Storage.Abstractions |
IBlobContainer<T> |
Async list, read, upsert, and delete operations |
AzureBlobStorageOptions |
Connection, endpoint, container, paging, and JSON settings |
AzureBlobStorageExtensions.AddAzureBlobStorage |
Registers Azure Blob clients and typed containers |
The provider creates the configured container on first use, replaces blobs on
upsert, returns null for missing reads, and returns false when a delete
finds no blob.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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
- Azure.Storage.Blobs (>= 12.30.1)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.13)
- Microsoft.Extensions.FileProviders.Abstractions (>= 10.0.13)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.13)
- Novolis.Storage.Abstractions (>= 2026.1.1.58)
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 |
|---|---|---|
| 2026.1.1.58 | 78 | 10/18/2026 |
| 2026.1.1.56 | 83 | 10/18/2026 |
| 2026.1.1.54 | 93 | 10/5/2026 |
| 2026.1.1.53 | 84 | 10/4/2026 |
| 2026.1.1.52 | 90 | 10/4/2026 |
| 2026.1.1.51 | 91 | 10/4/2026 |
| 2026.1.1.50 | 94 | 10/3/2026 |
| 2026.1.1.49 | 90 | 10/3/2026 |