升级MassTransit后,ConnectReceiveEndpoint的方法重载发生了变化

时间:2019-07-19 08:52:38

标签: c# rabbitmq masstransit

我正在从5.3.2升级到版本5.5.3,并且以下代码无法编译。我得到了错误

  

“ IReceiveEndpointConfigurator”不包含“ BindMessageExchanges”的定义,并且找不到可以接受的扩展方法“ BindMessageExchanges”接受类型为“ IReceiveEndpointConfigurator”的第一个参数(您是否缺少using指令或程序集引用?)      

'IReceiveEndpointConfigurator'不包含'Bind'的定义,并且找不到可以接受的扩展方法'Bind'接受类型为'IReceiveEndpointConfigurator'的第一个参数(您是否缺少using指令或程序集引用?)

看来 p IReceiveEndpointConfigurator,而不是IRabbitMqReceiveEndpointConfigurator。重载方法或扩展方法似乎有所变化。

我应该使用哪种重载方法呢?该代码在测试方案中用于连接临时队列/交换。 _host的类型为IRabbitMqHost

_handle = _host.ConnectReceiveEndpoint(p =>
        {
            p.BindMessageExchanges = false;
            p.Handler<T>(context =>
            {
                _receivedMessage = context.Message;
                _messageReceived.Set();
                return Task.CompletedTask;
            });
            p.Bind<T>(z =>
            {
                z.ExchangeType = "direct";
                z.RoutingKey = _routingKey;
            });
        });

1 个答案:

答案 0 :(得分:-1)