在此示例MVVM应用程序中,模型的使用是否有意义?

时间:2013-01-11 09:49:54

标签: c# mvvm model viewmodel

我需要编写一个使用MVVM模式和WPF的小工具。基本上该工具应执行以下任务:

  • 从GUI中获取用户名和密码。
  • 使用外部CSV文件中的数据读取行。
  • 使用从CSV中读取的数据对外部Web服务执行SOAP调用。

在上述(所有字符串)中使用以下数据:

  • 从GUI读取数据
    • 用户名
    • 密码
  • 从CSV读取数据
    • ID
    • 描述

CSV文件中的数据也不会在GUI中显示,也不会将任何数据存储在文件,数据库等中。它只是一个“连接器”。现在,应该进入模型的内容?或者在这种情况下我是否需要一个?

class MyData {
  private string id;
  private string description;

  public string Id {
    get { return id; }
    set { id = value; }
  }

  public string Description {
    get { return description; }
    set { description= value; }
  }
}

注意:
这个问题与我之前的问题有关:What is the model in MVVM for?

1 个答案:

答案 0 :(得分:1)

该模型由用于将数据表示为对象的POCO和用于检索数据的逻辑组成。

viewmodel负责保存特定于其目的的数据子集。

这意味着,从模型中读取CSV(ViewModel甚至不应该知道存在CSV),并且读取的数据也应存储在模型中定义的对象(PO​​CO)中。

然后,视图模型可以从模型中获取它们所需的任何数据子集。

如果应用程序需要持久性,则视图模型会将修改后的POCO推回到模型,然后负责更新CSV。