我需要多少个视图、视图模型和模型

本文关键字:模型 视图 多少 | 更新日期: 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 中执行这项工作。