2010-12-08 30 views
0

J'ai scénario similaire dans Domain Driven Design Question on Services and Repositories et http://pastie.org/795679 qui est confronté à l'azamsharp.enregistrer la liste des objets de valeur dans la table

Étant donné que l'enregistrement est un objet de valeur et que l'utilisateur peut avoir une liste d'objets de valeur, comment puis-je enregistrer ces enregistrements dans la table utilisateur car il existe une relation 1 à M entre utilisateur et enregistrement. Dois-je créer une table séparée pour l'enregistrement.

Répondre

0

DDD ou pas de DDD, si vous avez une relation 1-M, la solution la plus propre est une table distincte Registration, avec un FK retour au User.

Tout simplement parce que Registrations sont des objets de valeur, ne signifie pas que vous avez de les enregistrer dans la table User. C'est une idée fausse commune avec les débutants DDD. Peut-être que this answer peut aider.

+0

Merci Vijay, mais est-ce que ma table d'enregistrement peut avoir un ID agissant comme clé de substitution, ou seulement une clé étrangère pointant vers la table User parce que cet article http://stackoverflow.com/questions/949320/ddd-value-objects-and- orm dit que nous ne devrions pas avoir d'ID dans la table des objets de valeur – chandra

+0

Cette réponse ne s'applique que si vous avez un nombre fixe d'objets de valeur. Votre «inscription» a définitivement besoin d'un retour à l'utilisateur. Une clé de substitution est facultative (vous pourriez en avoir besoin à mesure que vos besoins évoluent). –