2013-06-20 36 views
0

我正在調試處理數據文件並使用服務總線觸發事件的控制檯應用程序。在啓動時,程序會啓動總線:犀牛服務總線傳輸正在隨機停止

ObjectFactory.GetInstance<IStartableServiceBus>().Start(); 

然後對文件中的每條記錄,它觸發是這樣的:

serviceBus.Send(new MyCustomEvent(id)); 

最近,控制檯已經失敗,出現以下異常:

InvalidOperationException: Cannot send a message before transport is started 
at Rhino.ServiceBus.Msmq.MsmqTransport.Send(Endpoint destination, Object[] msgs) 
at Rhino.ServiceBus.Impl.DefaultServiceBus.Send(Endpoint endpoint, Object[] messages) 
at Rhino.ServiceBus.Impl.DefaultServiceBus.Send(Object[] messages) 
at MyProgram.Processor.Process(Record record) in c:\Projects\MyProgram\Source\MyProgram\Processor.cs:line 183 

當我調試它時,錯誤是第二次拋出Send被稱爲。我沒有其他例外,但似乎是關閉我的服務總線。

任何想法如何我可以找出什麼是關閉巴士?

+0

獲取來自https://github.com/hibernating-rhinos/rhino-esb的源代碼,編譯調試版本,並把它停止斷點,然後查看堆棧跟蹤? –

回答