C#WPF中应用层与Caliburn Micro之间的通信

时间:2016-12-27 01:19:18

标签: c# wpf wcf caliburn.micro eventaggregator

我正在使用C#和WPF(用于客户端/服务器通信的WCF)构建n层客户端/服务器应用程序

我希望能够做的是让我的客户端服务经理能够将数据直接推送到ViewModel,并且这样做,让它在视图中出现。

例如: 用户A打开应用程序,并打开CustomersViewModel,显示客户列表。

用户B将新客户添加到数据库中。

在存储库知道用户B的数据已保存的位置,我想将消息推送到所有连接的客户端(NotifyClientsOfUpdateMessage)。当客户端服务管理器收到此消息时,我想使用类似Caliburn.Micro EventAggregator的东西,然后将其推送到任何实现IHandle的ViewModel,以在视图中显示列表已更改的消息,单击更新以刷新

现在 - 我的问题。 1 - Caliburn.Micro EventAggregator可以在应用程序的各层之间进行通信吗?在我的Autofac容器中,EventAggregator被注册为在应用程序层(ViewModels)和客户端层之间共享的单个实例,客户端层包含所有客户端代理,管理器等。

本质上,我希望从客户端管理器向应用程序层发布事件,并让ViewModel处理该信息,但需要这些信息。这可能吗?

2 - 是否有更有效的方法来实现同样的行为?

如果这是一个基本问题,请原谅我,这是我的第一个客户端 - 服务器应用程序,我在自学编写应用程序的1年时间。我通过谷歌,搜索引擎优化,MSDN等进行了大量搜索,但找不到任何相关信息。

提前致谢。

0 个答案:

没有答案