Skip to content

mikehadlow/EasyNetQ

This branch is 759 commits behind EasyNetQ/EasyNetQ:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ed42fff · May 1, 2017
May 1, 2017
Oct 17, 2015
Feb 10, 2017
May 1, 2017
Aug 16, 2016
Mar 20, 2013
Feb 8, 2017
Apr 27, 2017
Aug 9, 2016
Aug 13, 2016
Feb 10, 2017
Aug 13, 2016
Feb 10, 2017
Apr 4, 2017
Mar 28, 2015

Repository files navigation

Stories in Ready Stories in Progress

Build status

NuGet status

--

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...

bus.Publish(message);

To subscribe to a message...

bus.Subscribe<MyMessage>("my_subscription_id", msg => Console.WriteLine(msg.Text));

Remote procedure call...

var request = new TestRequestMessage {Text = "Hello from the client! "};
bus.Request<TestRequestMessage, TestResponseMessage>(request, response => 
    Console.WriteLine("Got response: '{0}'", response.Text));

RPC server...

bus.Respond<TestRequestMessage, TestResponseMessage>(request => 
	new TestResponseMessage{ Text = request.Text + " all done!" });

Management API

EasyNetQ also has a client-side library for the RabbitMQ Management HTTP API. This lets you control all aspects for your RabbitMQ broker from .NET code, including creating virtual hosts and users; setting permissions; monitoring queues, connections and channels; and setting up exchanges, queues and bindings.

See the documentation.

The annoucement blog post is here

Some blog posts about EasyNetQ ...

http://mikehadlow.blogspot.co.uk/search/label/EasyNetQ

Getting started

Just open EasyNetQ.sln in VisualStudio 2015 and build.

All the required dependencies for the solution file to build the software are included. To run the explicit tests that send messages you will have to be running the EasyNetQ.Tests.SimpleService application and have a working local RabbitMQ server (see http://www.rabbitmq.com/ for more details).

Mono specific

If you are building the software in monodevelop under Linux you will have to change the active solution configuration to 'Debug|Mixed platforms' to build all the included projects and set the 'Copy to output directory' property on the app.config files to something other then 'Do not copy'. Most of the example programs will not run since they utilise the TopShelf assembly to run as a windows service. The basic tests and Tests.SimpleServer seem to behave correctly.

About

An easy to use .NET API for RabbitMQ

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 99.4%
  • Other 0.6%