0

Aggregate の現在のバージョンを Read Model に伝える正しい方法を探しています。現在、私が見る唯一の可能性は、次のことを行うことです。

public class Child : AggregateBase
{
    ...

    public void ChangeName(string firstName, string lastName)
    {
        RaiseEvent(new ChildNameChanged(Id, Version + 1, firstName, lastName));
    }

    ...
}

Aggregate はすべての読み取り側イベント ハンドラーに AR バージョンを自動的にディスパッチする必要があると思うので、私はそれが好きではありません。

これを行う他の方法はありますか?

4

1 に答える 1

2

JOliver 自身のこの要旨をご覧ください: https://gist.github.com/1311195

基本的に彼がしていることは、代わりにディスパッチされたメッセージのヘッダーとしてバージョンを添付することです。そのようなものをイベントに追加したくありません。イベントはビジネスに焦点を当て続ける必要があります。

于 2011-11-17T11:25:12.190 に答える