私が読んだブログエントリは、値オブジェクトがドメイン駆動設計でエンティティを参照しても問題ないことを示しているようで、フォローアップでは NHibernate でこれを行う方法を説明しています。
Entity Framework 4.1 を使用して同じことをしたいと思います。具体的には、複合型が別のエンティティを参照するようにします。例として、これを考えてみましょう: 私はエンティティを持っています。たとえば、タイプCurrencyのTotalプロパティを持つInvoiceがあります。Currencyは、 Valueという型のプロパティとCurrencyUnit型のUnitプロパティを含む複合型です。CurrencyUnitは「参照データ エンティティ」です。つまり、この特定のドメインのCurrencyUnitはエンティティであり、値オブジェクト自体ではありません。decimal
現在、DDD では「許可」されている可能性がありますが、それは私の好みではありません。私はメリットについて議論したくありません。このシナリオを処理するために、EF にコード ファーストのソリューションがあるかどうかを知りたいと思っています。複雑な型は、もちろん外部キー参照を持つことができるエンティティを含むテーブルにマップされるため、奇妙なことです。