如何在C#中使用RabbitMQ进行消息队列处理

   2024-10-01 9640
核心提示:在C#中使用RabbitMQ进行消息队列处理需要使用RabbitMQ的官方客户端库RabbitMQ.Client。以下是一个简单的示例代码,演示如何在C#

在C#中使用RabbitMQ进行消息队列处理需要使用RabbitMQ的官方客户端库RabbitMQ.Client。以下是一个简单的示例代码,演示如何在C#中使用RabbitMQ发送和接收消息:

using RabbitMQ.Client;using System;using System.Text;class Program{    static void Main()    {        // 连接到RabbitMQ服务器        var factory = new ConnectionFactory() { HostName = "localhost" };        using (var connection = factory.CreateConnection())        using (var channel = connection.CreateModel())        {            // 声明一个队列            channel.QueueDeclare(queue: "hello",                                 durable: false,                                 exclusive: false,                                 autoDelete: false,                                 arguments: null);            // 发送消息            string message = "Hello World!";            var body = Encoding.UTF8.GetBytes(message);            channel.BasicPublish(exchange: "",                                 routingKey: "hello",                                 basicProperties: null,                                 body: body);            Console.WriteLine(" [x] Sent {0}", message);            // 接收消息            var consumer = new EventingBasicConsumer(channel);            consumer.Received += (model, ea) =>            {                var body = ea.Body.ToArray();                var message = Encoding.UTF8.GetString(body);                Console.WriteLine(" [x] Received {0}", message);            };            channel.BasicConsume(queue: "hello",                                 autoAck: true,                                 consumer: consumer);            Console.WriteLine(" Press [enter] to exit.");            Console.ReadLine();        }    }}

在这个示例中,我们首先连接到RabbitMQ服务器,然后声明一个名为"hello"的队列。我们发送一条消息"Hello World!"到这个队列,然后从该队列接收消息并打印出来。最后,按下回车键退出程序。

请确保在运行此示例之前已经安装了RabbitMQ服务器,并且RabbitMQ.Client库已经安装到您的C#项目中。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号