我有一個標準的Order/OrderLineItem設置。DDD/DI(Unity)/ .NET /組合根 - 域服務
一天中產生的退款數量在一天中持續存在,退款包含一個訂單ID和一個或多個LineItemId's。我需要在一天結束時將這些(在Windows服務中)合併到適當的信用卡,禮品卡,獎勵卡等。
我一直在閱讀Mark Seemann's book,並可以看到使用Composition Root沙漏一個對象圖的好處。
整合過程本身就是我需要做最多構圖的地方。
我不明白的是這個合併邏輯應該在哪裏結束?我可以假設,無論合併邏輯結束的位置如何,我仍然只在組合根目錄中使用類似Unity的組合,並且組合應該很早就發生?
歡迎提供更多信息或澄清!
謝謝你的回答。我有一個基於上面說過的問題...我應該總是使用一個服務,而服務又使用一個存儲庫,而不是直接使用任何存儲庫? – inthegarden
@inthegarden:您無法直接在服務的皮膚上公開存儲庫,也無法直接將實體返回到UI。所以在你的應用程序的頂層,你需要*某種類型的圖層。如果這完全映射到外部可調用的服務層,那很好。但是我不會將所有服務鉤子插入到該層的所有內容中*除非我想將UI上的每一項功能都公開給調用Web服務的人。這項服務是一套獨立於用戶界面的需求,所以不要過分熱衷於讓所有事情都通過它。 –