1
是否有可能使用DDD和豐富的域模型,如果你的應用程序是這樣的:我可以在WCF中使用豐富的域模型嗎?
- Windows客戶端(WPF)
- 窗口服務
和溝通與WCF發生什麼呢?
我以前只有數據狀態的DTO,並且在服務層有業務規則,但是每個人都告訴我應該有一個豐富的域模型,其中數據狀態和規則/方法都在對象中他們自己。
我只是不確定這個豐富的域模型是否適用於具有UI並通過WCF與服務進行通信的系統(就像我上面介紹的那樣)。在我的情況下,繼續使用WCF的貧血域模型會更好嗎?如果沒有,請給我一個關於如何使用豐富的域模型構建它的例子,考慮WCF,代理等?
謝謝!
謝謝肉體。在這種情況下,我會重複定義。例如,對於用戶,我將擁有一個用戶域對象(具有數據狀態和方法)以及一個用戶DTO(僅具有數據狀態)。這是一件好事還是可以接受的事情?謝謝 – Name123 2009-11-30 20:54:27
是的,沒關係。實際上,這通常是您用來支持Web服務和智能客戶端應用程序之類的模式。我使用類似的模式 - 將狀態包/ DTO傳遞給客戶端,並在域中使用更豐富的模型,以便封裝行爲。 – flesh 2009-11-30 23:17:17
@flesh:「......只要你不需要你客戶中的對象的'豐富'的行爲(無論如何你都不應該擁有一個好的DDD)......」。這是一個非常苛刻的限制!你是否建議客戶端PC不應執行邏輯? – 2009-12-01 10:45:38