我剛開始第一次使用MVC項目,而且遇到了一個我並不期待的問題:太多的模型。我是否在MVC ASP.NET中不必要地複製模型?
沒有太多不同的型號,但太多了,它們略有不同,但幾乎完全一樣。
我有一個相當複雜的頁面,有幾個組合框,明細對象的列表,我需要跟蹤的其他某種外在無關的事情。更多的信息進入視圖比我回來(這很好)。
我有一個領域模型,它始終保持不變。 (1 model)
我有一個單一的使用視圖模型,這是域模型和一些額外的信息包裹它。 (1個模型)
我有一個單次使用形式模型,它是視圖模型的與它裏面的域模型的一個空殼拷貝與它驗證東西的副本。 (2款)
我需要今天下午更改屬性的類型,我有三個不同的地方去改變它。它似乎我有太多的車型,其是一次性使用。對於那些應該比傳統ASP.NET更容易的東西似乎有很多工作。
我的問題是:我做對了嗎?應該有很多模型,還是我錯過了一些明顯的東西?
有人打算髮表意見嗎? – Jonathan 2013-04-10 07:18:55
對,我完全理解你。我有同樣的問題,我沒有真正解決它,但我試圖使用常識。我會盡可能地(重新)使用域模型。如果我需要添加一些「額外信息」,具體取決於它們的大小,我將使用ViewBag或ViewModel。在創建表單模型之前,我會嘗試重新使用視圖模型。但是,是的,你想要遵循所有不錯的模式,那麼你需要三種模式。 – 2013-04-12 10:39:27