Пытаюсь публиковать все сообщения в один обменник, которые будут раскидываться дальше в очереди по routing key, но почему-то создаются обменник с названием очереди.
Пытаюсь сделать как-то так:
cfg.Message<FirstMessagePart1>(p => p.SetEntityName("first_part1"));
cfg.Publish<FirstMessagePart1>(p =>
{
p.Durable = true;
p.AutoDelete = false;
p.BindQueue("first_exchange", "first_part1_queue");
});
cfg.ReceiveEndpoint("first_part1_queue", x =>
{
x.ConfigureConsumeTopology = false;
x.Bind("first_exchange", b =>
{
b.RoutingKey = "1";
b.AutoDelete = false;
b.Durable = true;
});
x.Consumer<FirstMessagePart1Consumer>(hostContext);
});
Получается то, что я и хочу, НО(!) создаются еще обменники с названием очереди:
Которые в свою очередь уже отправляют это всё в очередь:
Почему MassTransit создает эти обменники, а не делает напрямую это всё? Как можно (но нужно ли?) отключить это поведение?