Indiko.Blocks.Storage.AzureBlobStorage 4.0.0

dotnet add package Indiko.Blocks.Storage.AzureBlobStorage --version 4.0.0
                    
NuGet\Install-Package Indiko.Blocks.Storage.AzureBlobStorage -Version 4.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Indiko.Blocks.Storage.AzureBlobStorage" Version="4.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Indiko.Blocks.Storage.AzureBlobStorage" Version="4.0.0" />
                    
Directory.Packages.props
<PackageReference Include="Indiko.Blocks.Storage.AzureBlobStorage" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Indiko.Blocks.Storage.AzureBlobStorage --version 4.0.0
                    
#r "nuget: Indiko.Blocks.Storage.AzureBlobStorage, 4.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Indiko.Blocks.Storage.AzureBlobStorage@4.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Indiko.Blocks.Storage.AzureBlobStorage&version=4.0.0
                    
Install as a Cake Addin
#tool nuget:?package=Indiko.Blocks.Storage.AzureBlobStorage&version=4.0.0
                    
Install as a Cake Tool

Indiko.Blocks.Storage.AzureBlobStorage

Azure Blob Storage implementation of IFileProvider.

Overview

This package provides cloud-backed file storage operations over Azure Blob Storage and integrates with Indiko storage abstractions.

Key Components

  • AzureBlobStorageBlock
  • AzureBlobStorageFileProvider
  • AzureBlobStorageOptions

DI Registration Entry Point

AzureBlobStorageBlock.ConfigureServices(...) registers:

  • BlobServiceClient
  • scoped IFileProvider → AzureBlobStorageFileProvider

Configuration

Configuration section: AzureBlobStorageOptions

  • inherited storage settings (MaxFileSize, AllowedFileTypes)
  • ConnectionString
  • ContainerName
  • TempPath
  • Folder

Runtime Behavior and Caveats

  • Validates extension and max-size constraints before upload. Extensions are compared case-insensitively and independently of a leading dot.
  • Uploads stream to the blob; the size limit is checked up front for a seekable stream and enforced during the transfer otherwise, with the partial blob removed on failure.
  • Uploads overwrite an existing blob. They previously failed with a 409 instead; the behaviour now matches the local and S3 providers.
  • CopyFileAsync and MoveFileAsync wait for the copy to complete and refuse an existing destination with ConflictException. Previously the copy was started but not awaited, so the call reported success before the data existed -- and MoveFileAsync deleted the source while the copy was still reading it.
  • OpenReadAsync streams the blob instead of loading it into memory.
  • GetFullPathAsync returns the blob URI, which is not retrievable without credentials. Use GetPresignedUrlAsync for a SAS URL a browser can follow; it needs a client that can sign, i.e. a connection string including the account key.
  • A file name that would escape the configured folder is rejected with NotAllowedException. An unset Folder no longer produces blob names with a leading slash.
  • SaveFileAsync(string content) expects base64 content and decodes it.
  • Uses the existing container client; ensure the container exists and credentials are valid.

Minimal Usage

var provider = serviceProvider.GetRequiredService<IFileProvider>();
var fileName = await provider.SaveFileAsync(".png", base64Payload, cancellationToken);

Target Framework

  • .NET 10
  • Indiko.Blocks.Storage.Abstractions
Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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
4.0.0 36 10/1/2026
3.0.1 38 9/30/2026
3.0.0 44 9/30/2026
2.9.1 120 8/20/2026
2.9.0 103 8/20/2026
2.8.0 129 5/22/2026
2.7.8 116 5/7/2026
2.7.7 110 5/7/2026
2.7.6 125 4/23/2026
2.7.5 129 4/23/2026
2.7.4 127 4/23/2026
2.7.3 133 4/23/2026
2.7.2 119 4/23/2026
2.7.1 109 4/23/2026
2.7.0 130 4/23/2026
2.6.4 113 4/21/2026
2.6.3 114 4/21/2026
2.6.2 118 4/21/2026
2.6.1 114 4/18/2026
2.6.0 126 4/17/2026
Loading failed