Как добавить конфигурацию публикации сообщений на работающем IBusControl - PullRequest
0 голосов
/ 07 апреля 2019

Я использую MassTransit с RabbitMqTransport. Предположим, я запустил IBusControl, используя:

var control = Bus.Factory.CreateUsingRabbitMq(c =>
{
    var host = confgurator.Host(config.BuildHostUri(), h =>
    {
    ...
    });
...
});

await control.StartAsync();

Позже я подключил новую конечную точку к этому запущенному экземпляру, используя:

host.ConnectReceiveEndpoint(Configuration.QueueName, this.ConfigureEndpoint);

Есть ли способ настроить публикацию / отправку для новых типов сообщений в данный момент? Под «настройкой публикации / отправки» я подразумеваю использование методов, подобных существующим на IRabbitMqBusFactoryConfigurator:

confgurator.Send<MessageContract>(_ =>
{
    _.UseRoutingKeyFormatter(__ => Configuration.QueueName);
});
confgurator.Message<MessageContract>(x => x.SetEntityName(nameof(MessageContract)));
confgurator.Publish<MessageContract>(_ =>
{
...
}

1 Ответ

0 голосов
/ 08 апреля 2019

Согласно комментарию Криса Паттерсона, настройка публикации / отправки для типа сообщения может быть выполнена только во время настройки, до запуска шины.

...