1

我正在尝试了解 Wpf 的 MvvmLight 框架。乍一看,信使服务数据服务似乎做同样的事情。它们都可以用于将数据从 ViewModel 发送到 View。这还有什么?

请帮忙。

4

1 回答 1

1

数据服务用于从模型(或后端服务器)获取数据。Messenger 是一个组件,用于允许组件(主要是视图模型,但不仅仅是视图模型)以松散耦合的方式在它们之间传递消息。

细节:在 MVVM 中,视图模型通常不应该相互“了解”。因此,当视图模型 A 想要响应另一个视图模型 B 中发生的事情时,让 A 获取 B 的引用并附加事件处理程序并不是一个好习惯。信使允许 A 简单地注册到特定类型的消息,并让 B 发送此消息,而其中任何一个都没有相互引用。他们只需要“知道”消息类型。

数据服务是用于从后端获取数据的组件。视图模型引用它并请求数据。

希望这可以帮助

于 2014-09-10T10:13:42.807 回答