例如,在一個IDE應用程序中,比如說C#,有2個視圖是ClassView和TextView。MVC - Multiple Model One Data
在ClassView我們需要顯示以分級的方式,其中,如在TextView中示出了用於該類代碼的類信息。
ClassView中需要查詢類,方法,屬性,字段等,而文本視圖的查詢中的代碼行。
這兩個視圖都是可編輯的。一種觀點的變化也應反映在另一種觀點上。
因此類視圖需要一個模型和文本查看需要另一個但基礎數據是一樣的。
有沒有解決這樣一個問題的設計模式?
在此先感謝。
感謝您的快速反應。 所以當模型A改變時(通過視圖A),誰告訴視圖B更新自己。我的意思是以下是正確的。 查看A告訴Ctrl'er A告訴模型A更改一些數據。模型A告訴Common模型來改變數據。通用模型告訴所有註冊的觀察者(在這種情況下模型B)來更新視圖。模型B通知Ctrl'er B通知視圖B更新。 – Ajay 2010-01-28 22:05:13
@Ajay:也許我在你的問題中缺少了一些東西,但Model只不過是你目前存在的基礎業務數據的邏輯表示,通常在某個數據庫中。如果底層數據發生了變化,那麼它會跟隨代表該數據的模型類實例進行更改。如何實現的細節取決於數據存儲的性質,模型A是否知道關於模型B的任何內容,這是發生在一個進程還是多個進程中,哪種語言,平臺等等。 – 2010-01-29 06:41:13
數據是一個簡單的文件。所有型號都在相同的過程中。語言:C#,平臺:.NET。 我想知道的是在相同數據有多個模型的情況下,無論這些模型是否可以告訴其他模型有關數據的變化。 MVC模式是否允許這樣做,或者是否有任何其他更好的工作模式。 也可以MVC模式分層。即一個模型是另一個模型的模型。 E.g. Data-> Model A-> Model 1-> View 1 Data-> Model A-> Model 2-> View 2 – Ajay 2010-01-31 08:45:08