An adaptor to allow EasyNetQ to use Newtonsoft.Json serializer
Install
| Product | Versions |
|---|---|
| .NET | |
| .NET Standard |
README

A Nice .NET API for RabbitMQ
Initial development was sponsored by travel industry experts 15below
Goals:
Important Update
With the release of EasyNetQ v8, the method for connecting to a RabbitMQ broker has changed. The rest of the API remains unchanged.
To make working with RabbitMQ on .NET as easy as possible.
To connect to a RabbitMQ broker in v7...
var bus = RabbitHutch.CreateBus("host=localhost");
To connect to a RabbitMQ broker in v8...
var serviceCollection = new ServiceCollection();
serviceCollection.AddEasyNetQ("host=localhost").UseSystemTextJson();
using var provider = serviceCollection.BuildServiceProvider();
var bus = provider.GetRequiredService<IBus>();
To publish a message...
await bus.PubSub.PublishAsync(message);
To publish a message with a 5s delay...
await bus.Scheduler.FuturePublishAsync(message, TimeSpan.FromSeconds(5));
To subscribe to a message...
await bus.PubSub.SubscribeAsync<MyMessage>(
"my_subscription_id", msg => Console.WriteLine(msg.Text)
);
Remote procedure call...
var request = new TestRequestMessage {Text = "Hello from the client! "};
await bus.Rpc.RequestAsync<TestRequestMessage, TestResponseMessage>(request);
RPC server...
await bus.Rpc.RespondAsync<TestRequestMessage, TestResponseMessage>(request =>
new TestResponseMessage{ Text = request.Text + " all done!" }
);
Getting started
Just open EasyNetQ.sln in your preferred IDE or code editor and build. All the required dependencies for the solution file to build the software are included.
Contributors
Thanks to all the people who already contributed!
Changes from Previous Version
Adoption Assessment
A verified publisher signal is available. Assess fit from the package's supported frameworks, license and dependency graph rather than popularity alone.
Related Guides & Workflows
Learn how to evaluate, integrate, or audit this package in your .NET project.