上篇简述了​​ RabbitMQ环境准备/环境搭建​​,本片在上篇的基础上讲述RabbitMQ具体使用

1、新建.NET Framwork console控制台项目ConsoleRabbitMQ项目(生产者,即产生消息的)

2、对控制台项目ConsoleRabbitMQ项目使用NuGet程序管理包添加RabbitMQ.Client

3、控制台项目ConsoleRabbitMQ项目的Program代码如下

using RabbitMQ.Client;
using RabbitMQ.Client.Events;
using System;
using System.Text;

namespace ConsoleRabbitMQConsume
{
class Program
{
static void Main(string[] args)
{
var connectFactory = new ConnectionFactory
{
HostName = "localhost",
UserName = "guest",
Password = "guest"
};
using (var conn = connectFactory.CreateConnection())
{
using (var model = conn.CreateModel())
{
Console.WriteLine($"消费者连接成功");
model.QueueDeclare("queue", false, false, false, null);
var consume = new EventingBasicConsumer(model);
//consume.Received += Consume_Received;
consume.Received += (a, b) => { Console.WriteLine($"这是消费者据接收数据:{Encoding.UTF8.GetString(b.Body)}"); };
model.BasicConsume("queue", false, consume);
Console.Read();
}
}
}

private static void Consume_Received(object sender, BasicDeliverEventArgs e)
{
Console.WriteLine($"接收数据:{Encoding.UTF8.GetString(e.Body)}");
}
}
}

 

4、新建.NET Framwork console控制台项目ConsoleRabbitMQConsume项目(消费者,即接收消息的)

5、对控制台项目ConsoleRabbitMQConsume项目使用NuGet程序管理包添加RabbitMQ.Client

6、控制台项目ConsoleRabbitMQConsume项目的Program代码如下

using RabbitMQ.Client;
using RabbitMQ.Client.Events;
using System;
using System.Text;

namespace ConsoleRabbitMQConsume
{
class Program
{
static void Main(string[] args)
{
var connectFactory = new ConnectionFactory
{
HostName = "localhost",
UserName = "guest",
Password = "guest"
};
using (var conn = connectFactory.CreateConnection())
{
using (var model = conn.CreateModel())
{
Console.WriteLine($"消费者连接成功");
model.QueueDeclare("queue", false, false, false, null);
var consume = new EventingBasicConsumer(model);
//consume.Received += Consume_Received;
consume.Received += (a, b) => { Console.WriteLine($"这是消费者据接收数据:{Encoding.UTF8.GetString(b.Body)}"); };
model.BasicConsume("queue", false, consume);
Console.Read();
}
}
}

private static void Consume_Received(object sender, BasicDeliverEventArgs e)
{
Console.WriteLine($"接收数据:{Encoding.UTF8.GetString(e.Body)}");
}
}
}

 

7、启动RabbitMQ服务

RabbitMQ具体使用_.net

 

输入命令:rabbitmq-service start

浏览器中输入:​​http://localhost:15672/#/​​,点击Connections,Channels,Queues可以查看相关信息,如下

8、分别启动ConsoleRabbitMQ.exe和ConsoleRabbitMQConsume.exe这个两个项目,运行效果如下

 RabbitMQ具体使用_C#_02

 

龙腾一族至尊龙骑