0

我正在我的 RabbitAdapter 类中使用 RabbitBus.BusBuilder 创建一个 RabbitBus.Bus。

public class RabbitAdapter
{
  private Bus _bus;

  public RabbitAdapter()
  {
    // The exchange and queue values are the same as what I see in RabbitMQ in browser
    _bus = new BusBuilder()
      .Configure(ctx => ctx.Consume<StatusUpdate>()
        .WithExchange("exchange")
        .WithQueue("Log"))
        .Build();
  }

  public void Init()
  {
    // The [url] and [port] values are the same as what I see in browser
    _bus.Connect("amqp://guest:guest@[url]:[port]/#/", TimeSpan.FromSeconds(10));
    _bus.Subscribe<StatusUpdate>(OnHandle);
  }

  private void OnHandle(IMessageContext<StatusUpdate> statusUpdateContext)
  {
    Console.WriteLine(statusUpdateContext.Id);
  }

  public void Start()
  {
  }
}

我知道我可能只是在这里遗漏了一些东西。Bus 中的 _connectionFactory 不为空,但 _connection 为空。似乎超时了,我什至尝试过一分钟超时。

4

1 回答 1

2

你错过的是虽然控制台在 15672 上侦听,但实际服务器在 5672 端口上侦听。

于 2013-11-14T16:43:22.417 回答