CodeNet.RabbitMQ 1.1.1-preview1

This is a prerelease version of CodeNet.RabbitMQ.
dotnet add package CodeNet.RabbitMQ --version 1.1.1-preview1                
NuGet\Install-Package CodeNet.RabbitMQ -Version 1.1.1-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="CodeNet.RabbitMQ" Version="1.1.1-preview1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add CodeNet.RabbitMQ --version 1.1.1-preview1                
#r "nuget: CodeNet.RabbitMQ, 1.1.1-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.
// Install CodeNet.RabbitMQ as a Cake Addin
#addin nuget:?package=CodeNet.RabbitMQ&version=1.1.1-preview1&prerelease

// Install CodeNet.RabbitMQ as a Cake Tool
#tool nuget:?package=CodeNet.RabbitMQ&version=1.1.1-preview1&prerelease                

CodeNet.RabbitMQ

CodeNet.RabbitMQ is a .Net library.

Installation

Use the package manager npm to install CodeNet.RabbitMQ

dotnet add package CodeNet.RabbitMQ

Usage

appSettings.json

{
  "RabbitMQ": {
    "Hostname": "localhost",
    "Username": "guest",
    "Password": "guest",
    "Exchange": "",
    "RoutingKey": "RoutingKey",
    "Queue": "QueueName",
    "Durable": false,
    "AutoDelete": false,
    "Exclusive": false,
    "AutoAck": true
  }
}

program.cs

using CodeNet.Core.Extensions;
using CodeNet.RabbitMQ.Extensions;
using CodeNet.RabbitMQ.Module;
using ExampleApi.Models;

var builder = WebApplication.CreateBuilder(args);
builder
    .AddRabbitMQProducer(builder.Configuration.GetSection("RabbitMQ"))
    .AddRabbitMQConsumer(builder.Configuration.GetSection("RabbitMQ"));
builder.Services.AddScoped<IRabbitMQConsumerHandler<RabbitMQConsumerService>, MessageConsumerHandler>();
//...

var app = builder.Build();
app.UseRabbitMQConsumer<RabbitMQConsumerService>();
//...
app.Run();
Usage Producer
public class MessageProducer(RabbitMQProducerService Producer)
{
    public async Task<ResponseBase> Send(MessageProducerRequest request, CancellationToken cancellationToken)
    {
        Producer.Publish(request.Data);
        return new ResponseBase("200", "Successfull");
    }
}
Usage Consumer
public class MessageConsumerHandler : IRabbitMQConsumerHandler<RabbitMQConsumerService>
{
    public void Handler(ReceivedMessageEventArgs<KeyValueModel> args)
    {
        Console.WriteLine($"MessageId: {args.MessageId}, Value: {args.Data.Value}");
    }
}
Product 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. 
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 CodeNet.RabbitMQ:

Package Downloads
CodeNet.HealthCheck.RabbitMQ

CodeNet Health Check RabbitMQ package.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.1.1-preview1 66 10/29/2024
1.1.0 107 9/25/2024