diff --git a/RabbitMQ.DefaultExchange/Consumer/Program.cs b/RabbitMQ.DefaultExchange/Consumer/Program.cs index bf82c9d..48c4763 100644 --- a/RabbitMQ.DefaultExchange/Consumer/Program.cs +++ b/RabbitMQ.DefaultExchange/Consumer/Program.cs @@ -1,41 +1,51 @@ -using RabbitMQ.Client; -using RabbitMQ.Client.Events; using System; using System.Text; +using RabbitMQ.Client; +using RabbitMQ.Client.Events; -namespace Consumer +namespace RabbitMQ.DefaultExchange.Consumer { class Program { + private const string QueueName = "km23_default_queue"; + static void Main(string[] args) { - var factory = new ConnectionFactory() { HostName = "localhost" }; - using (var connection = factory.CreateConnection()) - using (var channel = connection.CreateModel()) + var factory = new ConnectionFactory { - channel.QueueDeclare(queue: "dev-queue", - durable: false, - exclusive: false, - autoDelete: false, - arguments: null); + HostName = "localhost" + }; + + using var connection = factory.CreateConnection(); + using var channel = connection.CreateModel(); - var consumer = new EventingBasicConsumer(channel); + channel.QueueDeclare( + queue: QueueName, + durable: false, + exclusive: false, + autoDelete: false, + arguments: null); + + var consumer = new EventingBasicConsumer(channel); + int receivedCount = 0; + + consumer.Received += (model, ea) => + { + var body = ea.Body.ToArray(); + var message = Encoding.UTF8.GetString(body); - consumer.Received += (sender, e) => - { - var body = e.Body; - var message = Encoding.UTF8.GetString(body.ToArray()); - Console.WriteLine(" Received message: {0}", message); - }; + receivedCount++; - channel.BasicConsume(queue: "dev-queue", - autoAck: true, - consumer: consumer); + Console.WriteLine($"[#{receivedCount}] Received: {message}"); + }; - Console.WriteLine("Subscribed to the queue 'dev-queue'"); + channel.BasicConsume( + queue: QueueName, + autoAck: true, + consumer: consumer); - Console.ReadLine(); - } + Console.WriteLine("Consumer started. Press [Enter] to exit."); + Console.ReadLine(); } } }