代码之家  ›  专栏  ›  技术社区  ›  Simon Randy Burden

如何获取nservicebus从中提取消息的队列名称

  •  1
  • Simon Randy Burden  · 技术社区  · 14 年前

    我可以用这个代码得到寄信人的地址。

    string returnAddress = Bus.CurrentMessageContext.ReturnAddress;
    

    但是我如何获得消息的“收件人地址”。也就是说,nservicebus从中提取消息的队列。

    我查了一下资料来源,好像是公共汽车。交通工具。地址是我想要的,但是没有上车的交通工具。

    注意:我在消息处理程序的“handle”方法中。

    2 回复  |  直到 13 年前
        1
  •  2
  •   Adam Fyles    13 年前

    这应该与MSMQTransport配置部分中的地址相同。您应该能够拉动该部分并获取值。

    String address = Configure.ConfigurationSource.GetConfiguration<MsmqTransportConfig>().InputQueue;
    
        2
  •  0
  •   Simon Randy Burden    14 年前

    似乎我只是通过添加属性来注入

    public ITransport Transport { get; set; }
    

    然后进入

    Transport.Address
    

    注意:事实证明,在最新的源代码中,itransport上没有属性“address”。所以这个答案是不正确的:(

    https://nservicebus.svn.sourceforge.net/svnroot/nservicebus/trunk/src/unicastTransport/NServiceBus.Unicast.Transport/ITransport.cs