问题描述
设置
使用IIS上的masstransit lib的asp.net核心应用程序localhost上的RabbitMQ,它消耗事件。
问题
RabbitMQ队列中有消息,当我的asp.net核心应用程序托管在IIS上时,它也不会使用它,而且,在RabbitMQ Management的队列详细信息中,它不视为使用者。但是,它消耗消息,并且当我“ dotnet运行”它或在IIS Express上运行它时,它可以视为使用者。
Startup.cs片段
...
services.AddMasstransit(x =>
{
x.AddConsumer<EventConsumer>();
x.UsingRabbitMq((context,cfg) =>
{
cfg.Host("localhost",c =>
{
c.Username("username");
c.Password("password");
});
cfg.ReceiveEndpoint("queue-name",e =>
{
e.ConfigureConsumer<EventConsumer>(context);
});
});
});
services.AddMasstransitHostedService();
...
EventConsumer.cs
public class EventConsumer : IConsumer<Event>
{
private readonly ILogger<EventConsumer> _logger;
public EventConsumer(ILogger<EventConsumer> logger)
{
_logger = logger;
}
public async Task Consume(ConsumeContext<Event> context)
{
var message = context.Message;
}
}
提前感谢所有回复。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)