c# - MVVM设计问题

标签 c# silverlight

我正在尝试使用 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/

相关文章:

c# - 如何使类工厂创建所需的派生类

c# - 如何在 Excel VBA 中使用 c# 类?

c# - 快图 : Cycle Detection

c# - 将远程图像保存到独立存储

c# - 在新 TAB 中打开 URI (Silverlight)

c# - 拖放需要数学修复

c# - 非常非常简单的MVVM问题

silverlight - Socket.SendAsync 线程安全有效吗?

c# - Silverlight ReaderWriterLock 实现好/坏?

c# - 如何使用流畅的断言比较对象图中的嵌套列表