Skip to main content

Package Selection

SimpleMessageBus is distributed as multiple NuGet packages based on the provider you want to use. Choose the packages that match your infrastructure and requirements.

Core Packages

SimpleMessageBus.Core

Core interfaces and base classes. Required by all other packages.

SimpleMessageBus.Hosting

Hosting extensions for background services and message processing.

Publishing Packages

File System PublisherBasic file system-based message publishing. Good for development and simple scenarios.
dotnet add package SimpleMessageBus.Publish
Azure Storage Queue PublisherPublishes messages to Azure Storage Queues.
dotnet add package SimpleMessageBus.Publish.Azure
Dependencies:
  • Azure.Storage.Queues
  • Microsoft.Extensions.DependencyInjection
Amazon SQS PublisherPublishes messages to Amazon SQS queues.
dotnet add package SimpleMessageBus.Publish.Amazon
Dependencies:
  • AWSSDK.SQS
  • Microsoft.Extensions.DependencyInjection
IndexedDB Publisher (Blazor WebAssembly)Client-side message publishing using browser IndexedDB.
dotnet add package SimpleMessageBus.Publish.IndexedDb
Requirements:
  • Blazor WebAssembly project
  • .NET 8+ target framework

Dispatching Packages

Core DispatcherBase dispatcher functionality and interfaces.
dotnet add package SimpleMessageBus.Dispatch
Azure Storage Queue DispatcherProcesses messages from Azure Storage Queues.
dotnet add package SimpleMessageBus.Dispatch.Azure
Amazon SQS DispatcherProcesses messages from Amazon SQS queues.
dotnet add package SimpleMessageBus.Dispatch.Amazon
File System DispatcherProcesses messages from file system storage. Includes Azure Functions trigger support.
dotnet add package SimpleMessageBus.Dispatch.FileSystem
IndexedDB Dispatcher (Blazor WebAssembly)Client-side message processing using browser IndexedDB.
dotnet add package SimpleMessageBus.Dispatch.IndexedDb

Testing Package

SimpleMessageBus.Breakdance

Testing utilities and mocks for unit testing message handlers.
dotnet add package SimpleMessageBus.Breakdance --version 1.0.0-preview

Installation by Scenario

Web Application with Azure Storage

For ASP.NET Core applications using Azure Storage Queues:
dotnet add package SimpleMessageBus.Publish.Azure
dotnet add package SimpleMessageBus.Dispatch.Azure
dotnet add package SimpleMessageBus.Hosting

Console Application with Amazon SQS

For console applications using Amazon SQS:
dotnet add package SimpleMessageBus.Publish.Amazon
dotnet add package SimpleMessageBus.Dispatch.Amazon
dotnet add package SimpleMessageBus.Hosting
dotnet add package Microsoft.Extensions.Hosting

Azure Functions

For Azure Functions with file system triggers:
dotnet add package SimpleMessageBus.Publish
dotnet add package SimpleMessageBus.Dispatch.FileSystem
dotnet add package Microsoft.Azure.WebJobs.Extensions

Blazor WebAssembly

For client-side Blazor applications:
dotnet add package SimpleMessageBus.Publish.IndexedDb
dotnet add package SimpleMessageBus.Dispatch.IndexedDb

Development and Testing

For development and testing scenarios:
dotnet add package SimpleMessageBus.Publish
dotnet add package SimpleMessageBus.Dispatch.FileSystem
dotnet add package SimpleMessageBus.Breakdance

Framework Requirements

SimpleMessageBus requires .NET 8.0 or later. It supports .NET 8, 9, and 10.

Supported Platforms

  • Windows: Full support for all providers
  • Linux: Full support for all providers
  • macOS: Full support for all providers
  • Browser (Blazor WebAssembly): IndexedDB provider only

Target Frameworks

All packages multi-target the following frameworks:
  • net8.0
  • net9.0
  • net10.0

Package Manager Commands

Package Manager Console

# Azure Storage Queue
Install-Package SimpleMessageBus.Publish.Azure
Install-Package SimpleMessageBus.Dispatch.Azure

# Amazon SQS
Install-Package SimpleMessageBus.Publish.Amazon
Install-Package SimpleMessageBus.Dispatch.Amazon

# File System
Install-Package SimpleMessageBus.Publish
Install-Package SimpleMessageBus.Dispatch.FileSystem

# IndexedDB (Blazor WebAssembly)
Install-Package SimpleMessageBus.Publish.IndexedDb
Install-Package SimpleMessageBus.Dispatch.IndexedDb

PackageReference

Add to your .csproj file:
<PackageReference Include="SimpleMessageBus.Publish.Azure" Version="6.0.0" />
<PackageReference Include="SimpleMessageBus.Dispatch.Azure" Version="6.0.0" />

Verification

After installation, verify the packages are correctly installed:
dotnet list package
You should see the SimpleMessageBus packages listed with their version numbers.

Next Steps

After installation, proceed to:

Troubleshooting

Common Issues

Ensure all SimpleMessageBus packages are using the same version. Use dotnet list package --outdated to check for version mismatches.
SimpleMessageBus requires .NET 8.0 or later. Update your project’s target framework if necessary:
<TargetFramework>net8.0</TargetFramework>
Some providers have additional dependencies that should be automatically installed. If you encounter missing assembly errors, try restoring packages:
dotnet restore
For additional help, visit our GitHub Issues page.
I