3
我是DDD的新手,希望澄清一些疑問。任何幫助表示讚賞。DDD中的實體課程和實用課程的位置
在DDD模型中,組件參考層次自頂向下,這意味着模型可以引用基礎架構,不應該是其他方式。現在,如果我們在Model assembly中聲明所有類,那麼在這種情況下,Infrastructure類將不得不引用Model Assembly來獲取數據訪問層(DAL)中的具體存儲庫實現的類信息。另外,模型組件將不得不引用基礎結構組件來訪問DAL層。我對此感到困惑!什麼應該是正確的方法?
我們是否應該在模型層或基礎架構DAL層中具有Repository和UnitOfWork接口,如同樣在模型層中具有接口但在基礎架構層中實際的DAL實現?
如果我們需要包含一些通用實用函數或類的其他程序集(例如在Enterprise Service Bus體系結構中進行通信的自定義CommandMessage類等),那麼我們應該在哪裏放置所有這些東西以及哪些應該是首選名稱空間(例如
CompanyName.Model.Common
)?