DKNet.Svc.BlobStorage.Abstractions 13.3.1

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

DKNet.Svc.BlobStorage.Abstractions

Provider-agnostic blob storage contract for .NET developers — application code depends on IBlobService and the shared models, and a provider package supplies the implementation.

✨ Why use it?

  • Swap storage backends with a single DI registration change — business logic only ever sees IBlobService.
  • Move every payload through the same BinaryData-based API — no separate byte[] overload to choose.
  • Get save-time guard rails (extension allow-list, name length, size limit) for free, shared by every provider.
  • Stream a large upload or download without buffering the whole payload into memory.

🚀 Quick Start

Use a .NET 10 console project. Install this package together with a provider package (Local shown here).

dotnet new console -f net10.0 -n BlobDemo
cd BlobDemo
dotnet add package DKNet.Svc.BlobStorage.Abstractions
dotnet add package DKNet.Svc.BlobStorage.Local
dotnet add package Microsoft.Extensions.Logging
using DKNet.Svc.BlobStorage.Abstractions;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;

var config = new ConfigurationBuilder()
    .AddInMemoryCollection(new Dictionary<string, string?>
    {
        ["BlobStorage:LocalFolder:RootFolder"] = Path.Combine(Path.GetTempPath(), "blob-demo")
    })
    .Build();

var services = new ServiceCollection().AddLogging().AddLocalDirectoryBlobService(config);
using var provider = services.BuildServiceProvider();
var blobService = provider.GetRequiredService<IBlobService>();

var location = await blobService.SaveAsync(
    new BlobDetails.BlobData("reports/hello.txt", BinaryData.FromString("Hello blob storage")) { Overwrite = true });
Console.WriteLine(location);

Run with dotnet run.

Documentation

Guide Read when
Package overview Start with architecture and the end-to-end flow.
Write a custom IBlobService provider Implement the abstract base class and reuse the shared validation and path rules.
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 (3)

Showing the top 3 NuGet packages that depend on DKNet.Svc.BlobStorage.Abstractions:

Package Downloads
DKNet.Svc.BlobStorage.Local

DKNet is an enterprise-grade .NET library collection focused on advanced EF Core extensions, dynamic predicate building, and the Specification pattern. It provides production-ready tools for building robust, type-safe, and testable data access layers, including dynamic LINQ support, LinqKit integration. Designed for modern cloud-native applications, DKNet enforces strict code quality, async best practices, and full documentation for all public APIs. Enterprise-grade .NET library suite for modern application development, featuring advanced EF Core extensions (dynamic predicates, specifications, LinqKit), robust Domain-Driven Design (DDD) patterns, and domain event support. DKNet empowers scalable, maintainable, and testable solutions with type-safe validation, async/await, XML documentation, and high code quality standards. Ideal for cloud-native, microservices, and enterprise architectures.

DKNet.Svc.BlobStorage.AwsS3

DKNet is an enterprise-grade .NET library collection focused on advanced EF Core extensions, dynamic predicate building, and the Specification pattern. It provides production-ready tools for building robust, type-safe, and testable data access layers, including dynamic LINQ support, LinqKit integration. Designed for modern cloud-native applications, DKNet enforces strict code quality, async best practices, and full documentation for all public APIs. Enterprise-grade .NET library suite for modern application development, featuring advanced EF Core extensions (dynamic predicates, specifications, LinqKit), robust Domain-Driven Design (DDD) patterns, and domain event support. DKNet empowers scalable, maintainable, and testable solutions with type-safe validation, async/await, XML documentation, and high code quality standards. Ideal for cloud-native, microservices, and enterprise architectures.

DKNet.Svc.BlobStorage.AzureStorage

DKNet is an enterprise-grade .NET library collection focused on advanced EF Core extensions, dynamic predicate building, and the Specification pattern. It provides production-ready tools for building robust, type-safe, and testable data access layers, including dynamic LINQ support, LinqKit integration. Designed for modern cloud-native applications, DKNet enforces strict code quality, async best practices, and full documentation for all public APIs. Enterprise-grade .NET library suite for modern application development, featuring advanced EF Core extensions (dynamic predicates, specifications, LinqKit), robust Domain-Driven Design (DDD) patterns, and domain event support. DKNet empowers scalable, maintainable, and testable solutions with type-safe validation, async/await, XML documentation, and high code quality standards. Ideal for cloud-native, microservices, and enterprise architectures.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
13.3.1 41 10/26/2026
13.3.0 79 10/22/2026
13.2.8 69 10/22/2026
13.2.7 158 10/11/2026
13.2.6 126 10/10/2026
13.2.5 135 10/2/2026
13.2.4 125 10/1/2026
13.2.3 125 10/1/2026
13.2.2 123 10/1/2026
13.2.1 113 10/1/2026
13.2.0 118 10/1/2026
13.1.3 143 9/21/2026
13.1.2 127 9/18/2026
13.1.1 131 9/18/2026
13.1.0 126 9/18/2026
13.0.2 137 9/18/2026
13.0.1 120 9/18/2026
13.0.0 128 9/18/2026
12.0.0 124 9/17/2026
11.0.0 126 9/17/2026
Loading failed