2016-12-02 67 views
1

我有在Azure上運行隊列一個rebusworker,我已經配置了將接收和發送郵件的rebusworker並能正常工作。但後來我想建立一個客戶端作爲一個單向的客戶是這樣的:我怎麼可以設置在QUEUENAME蔚藍畫謎隊列單向客戶

_bus = Configure.With(adapter)     
       .Transport(
       t => 
        t.UseAzureStorageQueuesAsOneWayClient(AppSettingsReader.AzureStorage) 
       ) 

      .Routing(r => r.TypeBased() 
       .MapAssemblyOf<SomeCommand>(queueAddress) 
      ) 

      }) 
      .Start(); 
    } 

我在哪裏可以設置我想將消息發送到隊列名稱?就像它爲queuename返回一個空引用異常一樣。

我用畫謎和rebus.AzureStorage 0.99.74

回答

0

queueAddress在段應是隊列的名稱,你想從的SomeCommand組裝發送消息。

要非常具體,讓我們假設你

.Routing(r => r.TypeBased() 
    .MapAssemblyOf<SomeCommand>("commandprocessor") 
) 

,然後你

await bus.Send(new SomeCommand(...)); 

然後滷麪會發送消息到隊列commandprocessor

+0

謝謝你的答案,作爲一個臨時的解決方法,我已經這樣做了,使其工作。由於單向客戶端發出異常,我將其配置爲傳輸設置中具有僞隊列地址的常規客戶端。並且我增加了我想在路由使用QUEUENAME .. .Transport( T => t.UseAzureStorageQueues(AppSettingsReader.AzureStorage, 「dummyqueue」) ) .Routing(R => r.TypeBased() 。 MapAssemblyOf (「NameofTheQueueToSendTo」) ) –