如何在正在运行的IBusControl上添加发布消息配置

问题描述 投票:0回答:1

我正在使用带有RabbitMqTransport的MassTransit。假设我使用以下命令运行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>(_ =>
{
...
}
c# .net masstransit
1个回答
0
投票

根据Chris Patterson的评论,配置发布/发送消息类型只能在配置期间,在启动总线之前完成。

© www.soinside.com 2019 - 2024. All rights reserved.