• Stars
    star
    2,848
  • Rank 15,287 (Top 0.4 %)
  • Language
    C#
  • License
    MIT License
  • Created about 13 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An easy to use .NET API for RabbitMQ

Build status

NuGet Status Nuget Status Nuget Status

Activity Activity Activity

EasyNetQ Logo

A Nice .NET API for RabbitMQ

Initial development was sponsored by travel industry experts 15below

Goals:

  1. To make working with RabbitMQ on .NET as easy as possible.

To connect to a RabbitMQ broker...

    var bus = RabbitHutch.CreateBus("host=localhost");

To publish a message...

    await bus.PubSub.PublishAsync(message);

To publish a message with 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 VisualStudio or Rider 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!