2010-12-08 9 views
0

azamsharpが直面するDomain Driven Design Question on Services and Repositorieshttp://pastie.org/795679にも同様のシナリオがあります。テーブル内の値オブジェクトのリストを保存する

登録は値オブジェクトであり、ユーザーは値オブジェクトのリストを持つことができるので、ユーザーと登録の間に1対Mの関係があるため、この登録をユーザーテーブルに保存する方法を教えてください。登録のために別のテーブルを作成する必要がありますか?

答えて

0

DDDまたはDDDなしの場合、1-M関係になります。最も清潔な解決策は別のRegistrationテーブルで、FKはUserに戻ります。

RegistrationsがValueオブジェクトであるからといって、にはがあり、Userテーブルに保存するわけではありません。 DDD初心者にとってはよくある誤解です。たぶんthis answerがお手伝いします。

+0

ありがとうございます。私の登録テーブルは、サロゲートキーとして機能するID、またはUserテーブルを指す外部キーのみを持つことができます。この記事はhttp://stackoverflow.com/questions/949320/ddd-value-objects-and- ormは、値オブジェクトテーブルにIDを持たないといいます。 – chandra

+0

固定値の値オブジェクトがある場合にのみ、その回答が適用されます。あなたの「登録」はFKを「ユーザー」に戻す必要があります。サロゲートキーはオプションです(要件が進化するにつれてサロゲートキーが必要な場合があります)。 –

関連する問題