我設計並開發了MVP模式中的應用程序。我沒有使用任何軟件工廠來實現這一點。現在我想轉移到SCSF模式和CAB結構。如何從MVP模式轉換到SCSF CAB模式?
我需要知道它是否可以以更簡單的方式完成,因爲CAB結構只實現了MVP。
我設計並開發了MVP模式中的應用程序。我沒有使用任何軟件工廠來實現這一點。現在我想轉移到SCSF模式和CAB結構。如何從MVP模式轉換到SCSF CAB模式?
我需要知道它是否可以以更簡單的方式完成,因爲CAB結構只實現了MVP。
在CAB和SCSF中,有代碼就緒的MVP類(和接口)。所以,如果你已經實現了它,那麼你可以複製你的方法,一旦你得到了類的hang。。
將嘗試向大家介紹它: -
1)IVIEW - 視圖/),它是一種參考,它公開只有那些集性能的方法,可以通過主持人(或任何其它類訪問
2)視圖 - 它具有Presenter的參考,並且可以訪問演示者的所有公共/受保護方法。按照設計,它不能訪問任何服務,因爲您需要WorkItem(服務,狀態,命令,事件等的容器)。對於所有實際的目的,View只是在那裏管理UI控件,綁定,對象狀態等。
3)Presenter - 它具有對WorkItem的引用(通過它可以訪問所有服務)。演示者有責任在服務的幫助下操作數據。
4)WorkItemController - WorkItemController可以採取用例相關的功能在佈線UI控件/解除wire,視定位等
它不僅僅是MVP在SCSF/CAB作爲其整體的UI應用的設計。它具有如下: -
所以,首先你必須檢查codeplex docs,看看你的項目將在該平臺/體系結構可以輕鬆升級。如果你剛剛開始,我會推薦CAB/SCSF,並考慮讓項目具有可擴展性和企業級別。
我會同意瓦利。你已經準備好了你的觀點。假設他們是完美的MVP。現在您需要將它們分類爲模塊。 我們創建了子工作項,這樣當用例啓動時,它就會添加到模塊的工作項集合中,並添加一個新的子工作項實例。所以當用例完成時,我們只是終止了子項目。如果發生任何異常,那麼現在該模塊的工作項目中的子項目將受到影響。 SCSF具有可以在屏幕上組合多個視圖的功能。因此,您需要注意是否可以使用ZoneWorkspace來避免重複的UI和邏輯。 決定模塊如何溝通,說事件或命令。 數據如何在視圖和模塊之間傳遞。現在你有了殼牌,你需要決定你將要在殼牌上擁有哪些區域。在shell中默認有什麼。這些模塊如何聽殼牌。 Shell從模塊中自定義的事件事件。
SCSF具有依賴注入。因此,決定你將擁有什麼樣的UI服務。相應地將它們注入到Presenter中。
哈基姆做的信息共享幫助你選擇智能客戶端? – Wali 2013-02-20 13:02:00