2017-02-08 8 views
0

C#APIのAppendToStreamAsync()呼び出しを使用してEventStoreストリームに書き込みを行っています。これはWriteResultを返しますが、新しく追加されたイベントのバージョンは返されません。このストリームに複数のクライアントが書き込む可能性があるため、NextExpectedVersionに頼ることはできません。ストリームに追加されたイベントのバージョンを取得する方法

私はストリームを購読し、 "私"イベントが発生するのを待つことができました。 しかし、私は何かを逃したことがあります。documentationは非常に軽く、返されるタイプについても言及していません。

この番号を取得するには、どのような方法が最適ですか?

答えて

0

ストリームを書き込む前に集約(ストリーム)のバージョンを知っているので、書き込みが成功したときにそのバージョンを知っていたので、バージョンは必要ありません。

ストリームに新しいイベントを書き込む前に、ストリームを読み込んで集約を再水和する必要があります。それからあなたはバージョンを知っています。他のライターが同じストリームに書き込んだ場合は、まず新しい状態にする必要があります。

オプティミスティック・ロックが必要ない場合は、ストリームを書き込むときにANYバージョンを指定できます(メモリー内に集約がある場合は、集約内の現行バージョンから照会できます)。 (これは、ストリームが単なるロギングストリームの場合に実行できます)

関連する問題