1
我想知道是否在ReBus中有一個簡單的方法在所有「子」事件(具有特定相關ID的所有事件)都已執行時得到通知。Rebus:如何應用所有相關事件時的攔截
我想知道是否在ReBus中有一個簡單的方法在所有「子」事件(具有特定相關ID的所有事件)都已執行時得到通知。Rebus:如何應用所有相關事件時的攔截
我不完全確定你想要達到的目標,但是如果我正確理解你,你只是問如何知道何時處理了幾個特定的消息。
在許多情況下,這可以通過在每一個用戶執行類似的邏輯來解決:
public class SomeSubscriberHandler : IHandleMessages<AnEvent>
{
public async Task Handle(AnEvent anEvent)
{
// handle event by doing something
// ...
// let the world know I did something
await _bus.Publish(new SomeSubscriberDidSomething(anEvent.CorrelationId));
}
}
從而允許佐賀訂閱SomeSubscriberDidSomething
,由所附CorrelationId
相關。
如果所有用戶都這樣做,這個傳奇可以很容易地確定這個過程到了多遠,然後找出當所有用戶完成他們的事情時最後要做的事情。