So repräsentieren Sie Referenzen in DDD -UnternehmenC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 So repräsentieren Sie Referenzen in DDD -Unternehmen

Post by Anonymous »

Ich versuche, DDD in den Griff zu bekommen und habe das Gefühl, dass ich in Bezug auf Entitäten, Aggregate, aggregierte Wurzeln, Repositorys und Wertobjekte und wie man diese Konzepte in Code tatsächlich darstellt. Nehmen wir an, ich habe die beiden folgenden Aggregate < /p>

DISCUSSIONGROUP (entity, aggregate root)
+name: string
+ENTRY (entity)
+title: string
+message: string
+timestamp: date
+madeByUser: USER

USER (entity, aggregate root)
+name: string
+email: string
+memberOf: DISCUSSIONGROUP
< /code>

Ein Benutzer kann ein Mitglied einer Diskussionsgruppe sein, aber die Benutzereinheit gehört nicht zum gleichen Aggregat. Es gibt jedoch immer noch eine Beziehung zwischen den beiden (eine Referenz). Bei der Betrachtung des tatsächlichen Codes würde ich aggregierte Beziehungen wie (mit C#) implementieren: < /p>

interface IDiscussionGroup {
string Name { get; }
IList { get; }
...
}
< /code>

i.e mit einfachen C# Referenzen. Würden Sie DDD -Referenzen implementieren (wie oben beschrieben) i dieselbe Weise, d. H.: < /p>

interface IUser {
IDiscussionGroup MemberOf { get; }
...
}
< /code>

von sollte man ein anderes Konstrukt verwenden, um die schwächere Art der Beziehung anzuzeigen? < /p>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post