在MVC中,模型包含域的數據和邏輯,視圖向用戶顯示信息,並提供用於交互的小部件,如按鈕,控制器處理按鈕按下等輸入。把視圖狀態放在MVC中的選擇位置?
但視圖的狀態屬於哪裏?
例如,如果您有國際象棋遊戲,您可能需要跟蹤選擇哪個圖形以及突出顯示哪些字段(可能需要突出顯示可能的移動)。
我讀了關於演示模型http://martinfowler.com/eaaDev/PresentationModel.html,這是一種做法。
我能想到的其他方式來做到這一點:
- 採用第二種模式,這不僅節省了選擇,並強調
- 把這些信息在視圖中(但我們必須在某種邏輯GUI)
- 把它放到控制器中(但是我們需要手動同步視圖和控制器狀態)
- 包裝域模型(或繼承它)並添加選擇和高亮到其他數據(this有些是演示模型)
但是,在mvc中這樣做的「正常」方式是什麼(如果存在這樣一種常規方式),或者您使用或推薦哪種方式?
在這裏提出了類似的問題:http://stackoverflow.com/questions/443910/where-should-i-save-a-complex-mvc-application-ui-state – twaggs 2012-03-04 20:01:18
thx爲鏈接。但是這個線程是高度web特定的。我主要針對的是桌面環境,其中我例如不要使用會話。 – Heisenberg 2012-03-04 21:13:26