我的任務是將應用程序從SharePoint轉換爲.NET。我很關心正確的做法,所以我找了一本體系結構書來閱讀模式和實踐。服務,模型和存儲庫層之間的交互
我試圖使用域驅動設計對所有東西進行建模。我有一個代表我的世界的模型,一個將它存儲在數據庫中的Repository,以及一個與UI交互的服務層(這是WebForms,因爲我在MVC中沒有0經驗,並且已經很難用這個工作來跋涉)。
我很難理解圖層互動的正確方法。我的理解是,模型應該是一切的基礎。它什麼都沒有引用,其他圖層引用它。
問題1:對嗎?
我真的很關心服務層。我注意到我正在開發一個非常貧血的模型,原因有兩個:1,我的模型沒有引用Repository,所以我不能通過模型存儲任何東西。 2,我試圖在事情發生的時候做事(例如,我將一個對象添加到一個對象列表中,所以當用戶完成添加對象時,我一次一個地將它存儲在數據庫中,而不是一次)。所以很多工作都在Service和Rep層之間完成,Model只是在那裏,看起來不錯。
我開始擔心 - 我在開發的早期階段,但我被看作是所有這些設計師。我不想要維護噩夢(我預計這個應用將會使用多年)。與往常一樣,時間是一個問題,我無法有效地進行準備/學習。任何幫助將會膨脹。 :-)
這非常有幫助。當你說模型沒有「引用」倉庫時,你是什麼意思?現在我有模型和代表在單獨的項目。如果模型調用Rep來堅持,Model需要引用Repository,對嗎? –
是的,但它仍然會鬆散耦合,如果在運行時注入存儲庫,所以您仍然有問題的分離。 – kd7