実装するインターフェースを使用して集約ルートにアクセスしたいのですが、次のようになります。
repository.GetById[[IMyInterface]](id);
これを実現するには、CommonDomainまたはEventStoreに何を伝える必要がありますか?IConstructAggregatesは、イベントを格納したアグリゲートの実装タイプを受け取ると思います。自分のIDマップを保持する必要がありますか?
たとえば、私がこれらのaggのルーツを持っているとしましょう:
class AggRoot1 : IInterface1, IInterface2 {}
class AggRoot2 : IInterface1, IInterface2 {}
'idFromAggRoot1'を持つaggregate1インスタンスをすでに保存しました。今、私はそのようにフェッチしたい:
repository.GetById<IInterface1>(idFromAggRoot1);
IInterface1には2つの実装者がいるので、後で何を作成する必要があるかをどのように知ることができますか?AggRoot1?AggRoot2?IInterface1?アクティベーターはここで爆撃するので、IConstructAggregatesを実装する必要があることはわかっていますが、元のcommitaggrootタイプを教えてくれる他の記述子があるかどうか疑問に思います。