私は現在DDDを掘り下げており、少し啓発が必要です。
私は2つのエンティティを持っています
Temple
TempleVariant
Temple
(イヤホン) には基本情報(名前、説明など) が含まれ、技術的な説明(CAD 図面、サイズなど) を持つ n 個のバリアントがあります。
私の第一印象は次のとおりでした:
Temple
そしてTempleVariant
集合体を形成します - それらは一緒に属します: それらは非常に密接に結合しているようです
Temple
a allを削除すると、同様TempleVariant
に削除する必要がありますTempleVariant
sなしでは存在できませんTemple
(少なくとも意味がありません)
しかし、集約ルートの外側では、別の集約内のエンティティを参照することは許可されていないことを読みました。しかし、実際には外部エンティティによって参照されるのではなくTemple
TempleVariants
、 .
これは、(DDD) 現実ではTemple
とTempleVariant
が異なる集合体であり、集合体のように見えることを意味しますか?
しかし、その後、削除するとどうなりTemple
ますか? 私が言ったように、TempleVariant
s も削除する必要があります。しかし、それは「1つの集計変更-1つのトランザクション」(またはそれが呼ばれるもの:))というルールに違反します。なぜなら、私の「感覚」は、1つのトランザクションでそれらを削除する必要があるからです...
だから私の質問は:
- それらの2つの集合体ですか?
- もしそうなら:削除を処理する方法は?
ラグワラッパー
_