2

我正在将 MVVM 与 WPF 一起使用,但我很难理解这种设计模式背后的概念。

我有一个“myclass”对象,它是应用程序的状态(它存储从存储库加载的数据)。我的应用程序的所有页面都将使用这些数据,并且对象应该在它们之间同步。

我的第一种方法是使用单例类将这些数据存储在服务层中。所以,所有的 ViewModel 都应该调用这个服务来获取数据。任何修改都应该调用这个服务,并且会触发一个事件来同步所有视图。

我现在想知道将这些数据存储在模型层中是否会更好......最好的选择是什么?

编辑:添加更多信息:存储的数据是加载到解决方案中的项目列表。由于必须只有一个解决方案,因此我将其实现为单例。must 可以交互地加载、更改或删除任何项目。

4

1 回答 1

0

据我了解,服务只是抽象了一个功能(访问文件系统,访问数据库......),它实现了一个给定的接口,VM然后在需要该功能时可以使用该接口。

然而,模型包含您的应用程序的业务逻辑以及任何有助于执行该业务逻辑的东西(如果需要,可以/不能实现INPC

所以本质上你使用一个服务来完成某件事然后放手,一个模型对你的应用程序来说更加根深蒂固

对于您给定的用例,我会将存储的信息存储在模型中并INPC在其上实现,以便在另一个 ViewModel 对模型进行更改时自动通知 ViewModel。

于 2013-04-16T09:43:00.030 回答