MVVM-我应该在哪里实现我的保存逻辑?

时间:2010-09-10 01:36:25

标签: c# mvvm

我有两种不同需要保存的型号; TextFile对象和静态Settings对象。

现在,我在模型中实现了保存逻辑。

在调用保存方法时,我喜欢看起来干净:

Settings.Save();

_currentFile.Save(filePath);

但是,根据我的阅读,听起来我应该在ViewModel中实现Save方法。

我现在正在做的不正确吗?

3 个答案:

答案 0 :(得分:3)

保存在模型中。但是,它可能不会进入该特定类(模型由您的所有实际工作负载组成)。

ViewModel仅用于从Model转换为View。它应该没有业务逻辑。

答案 1 :(得分:1)

如果你正在做的是将你的一个模型的状态保存到文件中,那么我会说你正在做的事情是完全合乎逻辑的。如果您要保存的文件是保存数据,这是特定于视图的,那么它确实应该放在ViewModel中。

答案 2 :(得分:0)

您可能对 WPF Application Framework (WAF) Writer 示例应用感兴趣。它使用MVVM模式,并显示可以实现Save操作的位置。此外,它使用静态设置对象来保存用户首选项(语言)。