Общая командная маршрутизация в MassTransit - PullRequest
0 голосов
/ 20 сентября 2019

Как мне установить универсальную маршрутизацию конечной точки для отправки команд в MassTransit?

Мы просто создаем прототип MassTransit и я хочу разработать базовую библиотеку, чтобы наши разработчики могли сосредоточиться исключительно на бизнес-кейсах.В этой базовой библиотеке я хочу установить общую маршрутизацию для команд.Например: в библиотеке определена команда с именем "FancyService.Contracts.DoSomethingCommand".Где бы эта команда ни была отправлена, она должна быть перенаправлена ​​в «FancyService» -Exchange / -Queue.

По Google я нашел класс «EndpointConvention», но я не уверен, как переопределить значение по умолчаниюповедение.

Итак, я не хочу, чтобы наши разработчики писали этот код:

    Bus.Instance
        .GetEndpoint(new Uri("rabbitmq://localhost/FancyService"))
        .Send(new Message { });

Но просто пишите:

    Bus.Instance
        .Send(new Message { });

Редактировать:

Только что нашли обходной путь.Получите все типы команд и вызовите «EndpointConvention.Map (Uri)» путем отражения.Но так ли это?

...