我需要多少个视图、视图模型和模型
本文关键字:模型 视图 多少 | 更新日期: 2023-09-27 17:55:59
我正在尝试使用 MVVM 模式开发一个 WPF 应用程序 - 实际上它更像是一个工具。我已经阅读了几篇文章,观看了视频,发布了问题,但不知何故,我觉得我对这个MVVM事物的方法或理解不是"正确的"。
我将从 UI 开始。在第一阶段,UI 应显示以下内容:
- 分组框与
- 用户名的文本框
- 密码的文本框(让我们忽略开始时的
PasswordBox
)
- 分组框与
- 此用户可用的项目名称列表的组合框(将从 Web 服务检索)
- 按钮"登录"以登录到所选项目
- 按钮"注销"用于从当前项目注销
因此,我将确定需要处理的以下数据:
- 用户名的字符串
- 密码字符串
- 项目列表的
ObservableCollection<Project>
- 表示活动项目的
Project
对象 boolean
是否登录到项目
担心,我不知道我应该如何构建或设计以下 MVVM。我应该在这里使用多少个视图、视图模型和模型?当然,应用程序会增长,但不会增长这么多。让我们坚持上述内容。
这个问题没有正确或错误的答案
将视图、视图模型和模型视为截断点。它们允许您模块化应用程序,而不是采用不可重用的整体方法。
一般来说,视图模型到视图是 1:M,但现实是大多数时候它们是 1:1 的关系。视图模型和视图是大部分工作所在的位置,模型只不过是一个 POCO,它为绑定需求实现INotifyPropertyChanged
。
在您的示例中,我将根据需要使用由单个视图模型和多个模型支持的单个视图(项目、用户凭据等)。您可能有执行实际登录工作的服务,但是您可以在 ViewModel 中执行这项工作。