Nano.Eventing.RabbitMq 10.0.0-preview1

This is a prerelease version of Nano.Eventing.RabbitMq.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Nano.Eventing.RabbitMq --version 10.0.0-preview1
                    
NuGet\Install-Package Nano.Eventing.RabbitMq -Version 10.0.0-preview1
                    
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="Nano.Eventing.RabbitMq" Version="10.0.0-preview1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Nano.Eventing.RabbitMq" Version="10.0.0-preview1" />
                    
Directory.Packages.props
<PackageReference Include="Nano.Eventing.RabbitMq" />
                    
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 Nano.Eventing.RabbitMq --version 10.0.0-preview1
                    
#r "nuget: Nano.Eventing.RabbitMq, 10.0.0-preview1"
                    
#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 Nano.Eventing.RabbitMq@10.0.0-preview1
                    
#: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=Nano.Eventing.RabbitMq&version=10.0.0-preview1&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Nano.Eventing.RabbitMq&version=10.0.0-preview1&prerelease
                    
Install as a Cake Tool

Nano.Eventing.RabbitMq

Build and Deploy NuGet NuGet

RabbitMq eventing for Nano applications.


Table of Contents

Summary

Eventing Provider implementation for RabbitMq.

📖 Learn more about Nano Eventing.
📖 Learn more about Nano Kubernetes RabbitMq.

Try it out yourself using the Api.Eventing.RabbitMq or Console.Eventing.RabbitMq example.

Registration

Install the Nano.Eventing.RabbitMq NuGet package.

dotnet add package Nano.Eventing.RabbitMq;

Continue with registering the RabbitMqProvider provider during application startup in the ConfigureServices(...) method.

...
.ConfigureServices(services =>
{
    services
        .AddNanoEventing<RabbitMqProvider>();
})
...

Configuration

Add the eventing configuration.

"Eventing": {
  "Host": null,
  "VHost": null,
  "Port": 5672,
  "Timeout": 30,
  "UseSsl": false,
  "Heartbeat": 60,
  "PrefetchCount": 50,
  "Credentials": {
    "Id": null,
    "Secret": null
  }
  "HealthCheck": {
    "UnhealthyStatus": "Unhealthy"
  }
}

Docker Compose

In addition to registering and configuring storage, you also need to configure your docker-compose setup. The rabbitmq image is the manangement image, so you are able to access the interface here: http://localhost:15672 and monitor and observe event messages being published and consumed.

services:
  {service-name}:
    depends_on:
      - eventing

  eventing: 
    image: rabbitmq:management
    hostname: rabbitmq
    ports:
      - 5671:5671
      - 5672:5672
      - 15671:15671
      - 15672:15672
    networks:
      - network
    environment: 
      RABBITMQ_DEFAULT_USER: rabbitmq_user
      RABBITMQ_DEFAULT_PASS: password
      RABBITMQ_DEFAULT_VHOST: "/"

Kubernetes

Next, add the following to your Kubernetes deployment.yaml or cronjob.yaml (depending on application type) for the Nano application.

spec:
  template:
    spec:
      containers:
        env:
        - name: Eventing__Credentials__Secret
          valueFrom:
            secretKeyRef:
              name: rabbitmq
              key: rabbitmq-password

You also need to map the rabbitmq secret that is created alongside the Nano Azure Kuberenetes Eventing in the deployment.yaml or cronjob.yaml for eventing authentication.

⚠️ The rabbitmq secret will be reused for all applications using RabbitMQ as eventing provider.
That makes it easy to change the secret values later on when needed, and just requires the secret values to be updated and re-deployed.

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 Nano.Eventing.RabbitMq:

Package Downloads
Nano.All

This package is part of the Nano Library, a set of reusable .NET libraries for building microservice applications. Nano addresses common non-business concerns such as logging, persistence, messaging, validation, and documentation, while remaining fully configurable and extensible, so applications can stay focused on business logic. See https://github.com/Nano-Core/Nano.Library for details.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
10.0.0-preview2 72 4/25/2026
10.0.0-preview1 78 4/24/2026

- .NET 10 support.
- Comprehensive rewrite with performance optimizations, improvements, and bug fixes.
- Not compatible with previous versions of Nano.