我最近開始閱讀關於ASP.net MVC的內容,在對這個概念感到興奮之後,我開始將所有的webform項目遷移到MVC,但是我很難保持我的即使在遵循所有好的建議之後(或者我可能沒有得到它),控制器仍然很瘦。 我處理的網站上有文章,視頻,報價...以及這些實體中的每一個都有可以與之關聯的類別,評論和圖片。我正在使用Linq來進行數據庫操作的sql,並且對於這些實體中的每一個,我都有一個存儲庫,並且對於每個存儲庫,我都會創建一個要在控制器中使用的服務。構建ASP.net MVC應用程序以使用存儲庫和服務
所以我有 -
- ArticleRepository
- ArticleCategoryRepository
- ArticleCommentRepository
和相應的服務
- ArticleService
- ArticleCategoryService ...
你看到圖片。
這個問題我有是,我有一篇文章,類別和評論一個控制器,因爲我認爲有ArticleController處理所有的可能是有意義的,但現在我必須通過所有必需的控制器構造的服務。所以我想知道我做錯了什麼。我的服務設計不正確嗎?我應該創建更大的服務來封裝更小的服務並在我的控制器中使用它們嗎?或者我應該有一個articleCategory控制器和articleComment控制器?
用戶查看的頁面包含所有這些內容,要查看的文章,與其相關的註釋,適用的類別列表......我如何有效地將控制器分解爲保持它「瘦」,解決我的頭痛?
謝謝! 我希望我的問題不會太長......
我的控制器目前有6-10 +依賴關係,我傳遞給構造函數。這也會導致龐大的控制器,但這是因爲我經常在單個頁面中顯示來自不同源的大量數據,並且所有數據都必須加載到視圖模型中。 –