【发布时间】:2021-09-19 20:05:34
【问题描述】:
我有一个队列,其中包含一些消息(使用 masstransit 创建)。
我尝试了这段代码来获取消息(见下文)。
我希望在 Console.Out 行上收到消息,但我从未点击过此行,并且消息仍在队列中。我没有收到任何错误。
有什么想法吗?
class Program
{
static void Main(string[] args)
{
var bus = Bus.Factory.CreateUsingRabbitMq(cfg =>
{
cfg.Host("localhost", "/", h =>
{
h.Username("guest");
h.Password("guest");
});
cfg.ReceiveEndpoint("myQueue", e =>
{
e.Handler<ProcessingQueue>(context =>
{
return Console.Out.WriteLineAsync($"{context.Message.Id}");
});
});
});
}
}
public class ProcessingQueue
{
public int Id { get; set; }
public string Name { get; set; }
}
谢谢,
我尝试添加:
bus.Start();
Console.WriteLine("Receive listening for messages");
Console.ReadLine();
bus.Stop();
但是当我这样做时,会创建一个新队列myQueue_skipped,其中包含我的消息。
【问题讨论】:
标签: c# .net rabbitmq message-queue masstransit