NetEvolve.Pulse.AzureQueueStorage
0.70.0
Prefix Reserved
dotnet add package NetEvolve.Pulse.AzureQueueStorage --version 0.70.0
NuGet\Install-Package NetEvolve.Pulse.AzureQueueStorage -Version 0.70.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="NetEvolve.Pulse.AzureQueueStorage" Version="0.70.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="NetEvolve.Pulse.AzureQueueStorage" Version="0.70.0" />
<PackageReference Include="NetEvolve.Pulse.AzureQueueStorage" />
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 NetEvolve.Pulse.AzureQueueStorage --version 0.70.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: NetEvolve.Pulse.AzureQueueStorage, 0.70.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 NetEvolve.Pulse.AzureQueueStorage@0.70.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=NetEvolve.Pulse.AzureQueueStorage&version=0.70.0
#tool nuget:?package=NetEvolve.Pulse.AzureQueueStorage&version=0.70.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
NetEvolve.Pulse.AzureQueueStorage
Azure Queue Storage transport for the Pulse outbox pattern. A cost-effective alternative to Azure Service Bus, available in every Azure Storage account with a 48 KB raw message size limit.
Features
- Connection Flexibility: Use a connection string or
DefaultAzureCredentialwith a service URI. - Automatic Queue Creation: Optionally creates the target queue on first use via
CreateQueueIfNotExists. - Base64 Encoding: Messages are JSON-serialized and Base64-encoded before sending, matching Azure Queue Storage requirements.
- Size Guard: Throws
InvalidOperationExceptionwhen a raw message exceeds 48 KB. - Sequential Batch Delivery:
SendBatchAsynciterates messages sequentially. - Dependency Injection: Single call
UseAzureQueueStorageTransportwires the transport.
Installation
.NET CLI
dotnet add package NetEvolve.Pulse.AzureQueueStorage
PackageReference
<PackageReference Include="NetEvolve.Pulse.AzureQueueStorage" Version="x.x.x" />
Quick Start
Connection String
using Microsoft.Extensions.DependencyInjection;
using NetEvolve.Pulse;
var services = new ServiceCollection();
services.AddPulse(config => config.UseAzureQueueStorageTransport(
connectionString: builder.Configuration["Storage:ConnectionString"]!
));
Managed Identity
services.AddPulse(config => config.UseAzureQueueStorageTransport(
queueServiceUri: new Uri("https://myaccount.queue.core.windows.net")
));
Configuration
| Option | Description |
|---|---|
ConnectionString |
Azure Storage connection string. Required when QueueServiceUri is not set. |
QueueServiceUri |
Azure Queue Storage service URI used with managed identity (DefaultAzureCredential). Required when ConnectionString is not set. |
QueueName |
Name of the queue to send messages to. Defaults to pulse-outbox. |
MessageVisibilityTimeout |
Optional visibility timeout applied to each sent message. Defaults to the queue's default. |
CreateQueueIfNotExists |
Automatically creates the queue on first use. Defaults to true. |
Configuration via appsettings.json
Register AzureQueueStorageTransportOptionsConfiguration to bind from the Pulse:Transports:AzureQueueStorage section:
services.AddSingleton<IConfigureOptions<AzureQueueStorageTransportOptions>, AzureQueueStorageTransportOptionsConfiguration>();
{
"Pulse": {
"Transports": {
"AzureQueueStorage": {
"QueueName": "my-outbox",
"CreateQueueIfNotExists": true
}
}
}
}
| 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- Azure.Identity (>= 1.21.0)
- Azure.Storage.Queues (>= 12.23.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Options (>= 10.0.10)
- NetEvolve.Pulse.Extensibility (>= 0.70.0)
-
net8.0
- Azure.Identity (>= 1.21.0)
- Azure.Storage.Queues (>= 12.23.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Options (>= 10.0.10)
- NetEvolve.Pulse.Extensibility (>= 0.70.0)
-
net9.0
- Azure.Identity (>= 1.21.0)
- Azure.Storage.Queues (>= 12.23.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Options (>= 10.0.10)
- NetEvolve.Pulse.Extensibility (>= 0.70.0)
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 |
|---|---|---|
| 0.70.0 | 54 | 7/24/2026 |