2010-01-01 1 views
0

Dans le livre .NET Domain-Driven Design avec C# de Tim McCarthy il y a un exemple d'une table de liaison (deux clés étrangères + une colonne booléenne) qui obtient sa propre classe dans le domaine. Est-ce commun?Qu'en est-il des tables de liens dans la conception par domaine?

L'exemple est une table de contact et une table de projet. La table de liens est un ProjectContact. Quels sont les avantages et les inconvénients de l'utilisation d'une classe ProjectContact au lieu d'avoir une propriété List of Contacts dans la classe Project et une propriété List of Projects dans la classe Contact?

Je dois dire que le fait d'avoir une classe ProjectContact facilite la persistance d'un nouveau lien entre un Projet et un Contact ... mais cela me semble trop compliqué.

Répondre

1

Pragmatiquement parlé (je ne suis pas un expert DDD), je dirais qu'une table de liens ne devrait pas apparaître dans le domaine à moins qu'il ne s'agisse d'une entité (vous devez y attacher un comportement, ou il a des propriétés autres que les clés étrangères).

+1

et les propriétés référenceurs à la période la relation est ne compte pas comme d'autres propriétés. –

Questions connexes