3

我剛剛開始使用DDD,並且首先使用EF代碼構建了一個存儲庫模式,目前爲止它工作得很好。現在說我有一個聚合根呼叫Animal,它有一個名爲Status的實體。知識庫和獲取聚合實體/值對象的新值

現在,如果我需要用Status對象填充下拉列表,或者我需要用新的對象替換動物中的Status對象。我應該如何訪問Status集合。在這種情況下,Status不是一個聚合根,並且僅與Animal有關聯,它將具有同一性。

我應該要麼通過成爲一個聚合根創建一個新的存儲庫Status(它只是許多這樣的事情之一,所以這可能失控),或做我允許的東西,如通過AnimalRepository訪問Status集合GetStatusByIDGetAllStatuses

這個同樣的問題也同樣適用於價值的物品,如顏色,品種,性別等

回答

1

這種東西,我會當作查找/引用數據。我發現這個答案在過去很有用:Loading a Value object in List or DropdownList, DDD

但基本上我會有一個單獨的存儲庫。

+0

打我也是一團糟! 下面是一些代碼的另一個答案 http://stackoverflow.com/questions/4921899/simple-aggregate-root-and-repository-question/4931457#4931457 –