我正在尝试使用 MVVM 设计模式创建一个 silverlight 应用程序。这是一种银行应用程序。
我看了很多关于 MVVM 的教程,但有些东西让我很困惑。
我有代表我的 View “TransactionsView”、“AccountView”等的 fiwe usercontrols 和一堆模型“UserProfile”——包含用户密码、用户名和 UserAccounts 列表,“UserAccounts”——包含名称、余额和列表AccountTransactions,“AccountTransactions” - 包含名称和金额。
我应该创建一个包含我的用户配置文件的模型 View ,还是应该为我拥有的每个 View 创建一个 View 模型?到目前为止我做得对吗?还是我完全弄错了?
谢谢
最佳答案
在 MVVM 中,ViewModel 通常与 View 是一对一的。不过,ViewModel 和 Model 的数量并不相等。
- View :用户界面
- ViewModel:处理对 View 状态的更改,并在适当的时候将它们转发给模型。从底层程序向用户发送通知。它还可以进行初始 UI 验证。
- 模型:应用程序的实际“内容”。算法、数据存储、系统调用等都在这里。我把程序流程放在这里。我见过其他人把它放在 ViewModel 中。这部分由您自己决定。
一个 View 总是需要一个 ViewModel,因此是一对一的(它可能有子模型,但我会把它留给你来决定/处理。我会从一对一开始1).
ViewModel 通常需要模型来实际“工作”,但是类/实例的数量取决于您要解决的每个应用/问题。
关于c# - MVVM设计问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4667049/