2

メッセージ 1 で開始され、メッセージ 2 で完了するなど、2 つのメッセージ タイプで構成されるサガがある場合、メッセージ 1 が存在しない状態でメッセージ 2 が着信した場合、コールバックを返すことはできますか? エラーキューにダンプされることはわかっていますが、最初のメッセージが存在しないためにエラー状態があることを送信クライアントに返すことができるようにしたいと考えています。

4

2 に答える 2

3

だから私はそれを理解しました、私IFindSagasはメッセージタイプのために実装する必要がありました:

public class MySagaFinder : IFindSagas<MySagaData>.Using<Message2>
{
    public ISagaPersister Persister { get; set; }
    public IBus Bus { get; set; }

    public MySagaFinder FindBy(Message2 message)
    {
        var data = Persister.Get<MySagaData>("MessageIdProperty", message.MessageIdProperty);
        if (data == null)
        {
            Bus.Return(0);
        }
        return data;
    }
}

これが正しい方法かどうかはわかりませんが、うまくいきます!

于 2011-09-03T01:33:23.400 に答える