私は次のように複数のメッセージを処理できるサガを持っています:
public class OrderSaga : ISaga<Order>
, InitiatedBy<StartOrderSaga>
, Orchestrates<CancelOrder>
, Orchestrates<PaymentForOrderReceived>
, Orchestrates<CheckOrderWasPaid>
, Orchestrates<OrderAbandoned>
, Orchestrates<CheckOrderHasBeenShipped>
, Orchestrates<OrderShipped>
, Orchestrates<CheckOrderHasDelayDuringShipment>
, Orchestrates<OrderArrivedAtDestination>
, Orchestrates<OrderCompleted>
{...}
しかし、Orchestrates<CancelOrder>だけがピックアップされているようです。ですから(私はその線を見つけられませんでしたが、これはそうだという強い印象を受けています)、最初のオーケストラだけが登録されていると思います。
おそらくこれは仕様によるものです。私がサガを想像していたことから、それが多くの異なるメッセージを受け取ることは論理的であるように思われますが、私は間違っているかもしれません。私も私の全体の仮定が間違っているかもしれません:)
これをどのように処理する必要がありますか?Sagasは1つ(私の場合)のChangeStateMessage <State>のみを処理することになっていますか、それとも他のConsumerOfs / Orchestratesを手動で配線する必要がありますか?