相关疑难解决方法(0)

ASP.NET Core服务未创建RabbitMQ队列

作为MassTransit和RabbitMQ的新用户,我目前正在尝试使ASP.NET核心服务与MassTransit一起使用。

采取本文档部分来配置MassTransit和ASP.NET Core,我无法使其正常运行。

当前(部分)Startup.cs看起来像

 services.AddMassTransit(x =>
            {
                x.AddConsumer<MailConsumer>();
                x.AddConsumer<MailFailedConsumer>();

                x.AddBus(provider => ConfigureBus(provider, rabbitMqConfigurations));
            });


private IBusControl ConfigureBus(
                            IServiceProvider provider,
                            RabbitMqConfigSection rabbitMqConfigurations) => Bus.Factory.CreateUsingRabbitMq(
                            cfg =>
                            {
                                var host = cfg.Host(
                                    rabbitMqConfigurations.Host,
                                    "/",
                                    hst =>
                                    {
                                        hst.Username(rabbitMqConfigurations.Username);
                                        hst.Password(rabbitMqConfigurations.Password);
                                    });

                                cfg.ReceiveEndpoint(host, $"{typeof(MailSent).Namespace}.{typeof(MailSent).Name}", endpoint =>
                                {
                                    endpoint.Consumer<MailConsumer>(provider);
                                });

                                cfg.ReceiveEndpoint(host, $"{typeof(MailSentFailed).Namespace}.{typeof(MailSentFailed).Name}", endpoint =>
                                {
                                    endpoint.Consumer<MailFailedConsumer>(provider);
                                });
                            });
Run Code Online (Sandbox Code Playgroud)

该交换在启动时在RabbitMQ中自动创建,但是没有队列绑定到我期望的交换。

调用我的API端点后,我可以看到交换上的活动,但是由于没有队列,因此消费者当然不执行任何操作。

我缺少什么(明显)部分?

c# asp.net masstransit rabbitmq

6
推荐指数
1
解决办法
215
查看次数

标签 统计

asp.net ×1

c# ×1

masstransit ×1

rabbitmq ×1