Soenneker.Blob.Delete 4.0.3067

Prefix Reserved
dotnet add package Soenneker.Blob.Delete --version 4.0.3067
                    
NuGet\Install-Package Soenneker.Blob.Delete -Version 4.0.3067
                    
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="Soenneker.Blob.Delete" Version="4.0.3067" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Soenneker.Blob.Delete" Version="4.0.3067" />
                    
Directory.Packages.props
<PackageReference Include="Soenneker.Blob.Delete" />
                    
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 Soenneker.Blob.Delete --version 4.0.3067
                    
#r "nuget: Soenneker.Blob.Delete, 4.0.3067"
                    
#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 Soenneker.Blob.Delete@4.0.3067
                    
#: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=Soenneker.Blob.Delete&version=4.0.3067
                    
Install as a Cake Addin
#tool nuget:?package=Soenneker.Blob.Delete&version=4.0.3067
                    
Install as a Cake Tool

alternate text is missing from this package README image alternate text is missing from this package README image alternate text is missing from this package README image alternate text is missing from this package README image

Soenneker.Blob.Delete

Deletes individual Azure blobs, entire containers, or every blob under a virtual-directory prefix.

Install

dotnet add package Soenneker.Blob.Delete

Register the utility in Program.cs:

using Soenneker.Blob.Delete.Registrars;
builder.Services.AddBlobDeleteUtilAsSingleton();

Scoped registration is also available.

The underlying Blob packages require Azure:Storage:Blob:ConnectionString in configuration. Store that value in a secret provider.

Delete one blob

Response<bool> response = await blobDelete.Delete(
    "invoices",
    "2026/obsolete.pdf",
    cancellationToken);

bool deleted = response.Value;

false means the blob did not exist. Azure authorization, lease, snapshot, and service failures throw RequestFailedException. The default Azure delete behavior does not include snapshots, so a blob with snapshots may require explicit snapshot cleanup before this method can delete it.

Delete a virtual directory

Azure Blob Storage has blob-name prefixes rather than physical directories. This method lists the supplied prefix and deletes each returned blob sequentially:

bool allDeleted = await blobDelete.DeleteDirectory(
    "exports",
    "temporary/2026/",
    cancellationToken);

The result is true when every listed blob was deleted or no blobs matched. It is false if a listed blob disappeared before its delete completed. Azure request failures are not converted to false; they stop the operation and propagate.

Prefix matching can include more blobs than intended when the trailing delimiter is omitted. Use temporary/2026/, not temporary/2026, when only that virtual directory should be removed.

Delete a container

bool deleted = await blobDelete.DeleteContainer(
    "temporary-exports",
    cancellationToken);

Container deletion removes all blobs, versions, and snapshots in that container. Treat the container name as trusted application configuration, not direct user input.

Important behavior

  • The shared client/container utilities normalize container names to lowercase.

  • Those utilities ensure the target container exists while resolving clients. As a result, deleting a missing blob or container can briefly create the missing container before deletion. Avoid using these methods as existence probes.

  • Directory deletion is not transactional. Cancellation or a failure can leave a partially deleted prefix.

  • Soft delete, versioning, immutability policies, legal holds, and leases can change whether data is recoverable or whether deletion is allowed.

  • Cancellation stops pending work; it does not undo work that has already completed.

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 (1)

Showing the top 1 NuGet packages that depend on Soenneker.Blob.Delete:

Package Downloads
Soenneker.Blob.Suite

A concoction of Azure Blob Storage utilities and libraries

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
4.0.3067 39 9/10/2026
4.0.3066 64 9/9/2026
4.0.3065 58 9/9/2026
4.0.3064 71 9/9/2026
4.0.3063 84 9/8/2026
4.0.3062 100 9/8/2026
4.0.3061 111 9/8/2026
4.0.3060 71 9/8/2026
4.0.3059 100 9/7/2026
4.0.3058 96 9/7/2026
4.0.3057 157 9/5/2026
4.0.3056 106 9/5/2026
4.0.3055 155 9/5/2026
4.0.3054 88 9/5/2026
4.0.3053 101 9/4/2026
4.0.3052 122 9/4/2026
4.0.3051 94 9/4/2026
4.0.3050 114 9/4/2026
4.0.3049 97 9/4/2026
4.0.3048 138 9/4/2026
Loading failed

Updated Multiple NuGet packages