【发布时间】:2019-12-20 13:57:48
【问题描述】:
给定队列名称,我需要 RabbitMQ 中该队列中的所有消息。
我在 msgCount 变量中获得了队列中的消息数,在 strBody 变量中获得了第一条消息。 但我需要给定队列中的所有消息。当我单击 Get Message(s) 按钮时,RabbitMQ 管理 UI 在浏览器中提供给我的东西
using (var conn = _connectionFactory.CreateConnection())
{
using (var channel = conn.CreateModel())
{
var queueName = "myqueuename";
var response = channel.QueueDeclarePassive(queueName);
var msgCount = response.MessageCount;
var consCount = response.ConsumerCount;
BasicGetResult result = channel.BasicGet(queueName, noAck);
if (result == null)
{
//No msgs available
}
else
{
IBasicProperties properties = result.BasicProperties;
byte[] body = result.Body;
string strBody = System.Text.Encoding.UTF8.GetString(body);
Console.WriteLine(strBody);
//channel.BasicAck(result.DeliveryTag, false);
}
}
}
【问题讨论】: