0
在發佈消息期間,是否有任何方法覆蓋或設置爲null MassTransit的內置字段? 對於我的特殊情況,我需要在集成測試中的消息發佈期間將ConversationId設置爲null。發佈消息我正在使用MassTransit覆蓋發佈期間的ConversationId
await Bus.Publish<ITestContractMessage>(new {TestName = "Hello World"});
我試過使用ConfigurePublish方法配置總線,但它沒有幫助。
cfg.ConfigurePublish(x => x.UseSendExecute(ctx => ctx.ConversationId = null));
有沒有關於如何實現它的任何想法?
感謝您的快速回答!但不幸的是,這種方法對ConversationId不起作用,因爲,看起來,它在委託調用後填充。 其他一些頭文件,例如SourceAddress可能會以這種方式更改。 – Paulik
我會檢查過濾器順序並修復發現的問題。它應該在開發人員訪問之前設置它,以便它可以被覆蓋。 –
是的,如果它不存在,它會強制'ConversationId',所以沒有辦法用null發送它。但是,如果將其設置爲空,它將生成一個新的。 –