我正在使用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等进行了大量搜索,但找不到任何相关信息。
提前致谢。