2011-05-22 64 views
0

首先要告訴你,我是真正的新WPF問題Implelemting MVVM模式的應用

我有一些問題要問我有沒有在網上找到了答案NE .....有些教程是有,但再次他們只是迷惑.....

問題:

1)MVVM可用於來回時間限制的項目(提前交貨)。
2)我應該如何讓我的對象Model(實體類)。
3)數據訪問層將在哪裏。在模型中...
4)業務邏輯(某些部分)在VIEW MODEL
5)最容易混淆-----多少VIEW MODELS我必須做什麼.....我已經看到了一些示例應用程序在網絡上....他們要麼在1個視圖模型完成或他們使用1-2多個視圖模型之外還有實體類....

我應該用一個框架來實現對於初學者水平......請建議我一些....
不只是我,但我的許多同事也都faceing同樣的問題...

+1

對於框架,請查看Caliburn Micro。 – 2011-05-22 05:34:37

回答

2

,我明白MVVM的方式是這樣的:

1)您的UI數據綁定到您的ViewModel。您的ViewModel反過來包裝您的模型,並將其轉換爲綁定友好的界面。模型可能是持久友好的,但持久友好模型並不總是UI友好的。 ViewModel的想法是彌合這種差距,並使模型適應UI可以輕鬆綁定的東西。

2)你的模型可以,如果你喜歡的任何講座實體框架,或普通類(我的偏好)。唯一重要的是它能夠在屬性改變時通知你的ViewModel。所以我通常建議模型類實現INotifyPropertyChanged或類似的東西。

3)這是一個設計決策,取決於你。您的數據訪問層應與模型分開,但應與模型進行交互。見單一責任原則。你的模型只存儲數據。

4)商業邏輯可以在視圖模型,對,或在控制器,座標的一個或多個的ViewModels。

5)你通常要創建每個類型的UI元素的一個視圖模型。這可以變得非常細緻,特別是當ViewModels包含其他ViewModels時。例如,如果你的UI中有一個網格,你可能會在整個網格中有一個ViewModel,然後爲這些行本身設置另一個ViewModel類。擁有比模型更多的ViewModel並不罕見 - 例如,您可能有一個網格行的ViewModel,以及一個Details視圖的不同ViewModel,但它們可能會映射到同一個Model。

希望這會有所幫助!

+0

感謝的解釋....我一定會使用這些建議爲我的測試應用程序....我正在學習MVVM – Ankesh 2011-05-23 06:33:14