Wo gehört die Logik zum Löschen/Nicht-Löschen von abhängigen Objekten in DDD?Wo liegt die Logik zum Löschen abhängiger Objekte im domänenbasierten Design (DDD)?
Zum Beispiel hat man eine Kategorie, die Produkte enthält:
class Category
{
IList<Products> products;
}
Eine Regel könnte sein, dass eine Kategorie nicht gelöscht werden kann, wenn es keine Produkte hat.
Wohin gehört die Logik, die vor dem Löschen nach Produkten dieser Kategorie sucht?
"zurück! Kategorie.HasProducts;" vielleicht? –
@Bryan Watts, OT & FYI: Wenn ich Code schreibe, der gelesen werden soll und nicht ausgeführt wird, bevorzuge ich oft "x == false" anstelle von "! X". Ich denke, es fließt besser, es als "Kategorie hat Produkte gleich falsch" als als "nicht Kategorie hat Produkte" zu lesen. Nur eine persönliche Vorliebe. In einem realen Szenario würde ich! Category.HasProducts verwenden. –
@KevinSwiber Ich weiß, das ist ein alter Post, aber wo der Code, den Sie bereitgestellt haben, sollte lokalisiert werden (d. H. Die Frage)? Domänenschicht oder Serviceschicht? Vielen Dank –