如何将请求路由到特定实例

时间:2018-11-16 13:45:49

标签: c# nservicebus

我的配置如下:

Endpoint1使用RabbitMQTransport <=>网桥<=>多台计算机上的端点使用MsmqTransport。

我想向特定计算机发送请求:

    public Task<TResponse> SendRequest(TRequest request)
    {
        IBaseMessage msg = (IBaseMessage)request;
        var sendOptions = new SendOptions();
        sendOptions.RouteToSpecificInstance($"{msg.MachineHost}");
        return endpointInstance.Request<TResponse>(request, sendOptions);
    }

Reuquest引发异常

  

System.Exception:“仅当为逻辑端点(而不是地址或实例)定义路由时,才允许路由到特定实例。”

奇怪的是因为配置了Endpoin:

        var routingSettings = transport.Routing();
        var bridge = routingSettings.ConnectToBridge("Transport.RabbitMq");
        bridge.RouteToEndpoint(typeof(GetProgramPlacements), "MachineCommanderService");

我不知道如何解决。

0 个答案:

没有答案