我正在尝试在我的ViewModel之间实现消息传递 我的概念证明代码如下:
RxApp.MessageBus.Listen<int>("test")
.Subscribe(i => MessageBox.Show(i.ToString()));
RxApp.MessageBus.SendMessage<int>(42, "test");
我的单元测试运行成功,所以我认为它可能是一个调度问题。
我手动设置调度程序:RxApp.DeferredScheduler = DispatcherScheduler.Instance;
但是无论如何都将它设置为正确的实例,没有任何变化。 我可以注册消息。我从来没有收到任何:/ 使用空消息合同也不会改变任何内容。
我尝试了模拟器和设备(Mango SDK Refresh / Mango Build 7712)
我希望有人可以帮助我:) 任何提示都非常感谢。
答案 0 :(得分:3)
我怀疑这是一个MessageBus错误 - 谁写了这个废话,反正呢?
**我会调查一下:)
答案 1 :(得分:-1)
我的错误,因为假设它对调度程序来说是非常重要的事情:)
问题是,在WP7 / SL上用作Dictionary键的Tuple类没有实现有用的Equals()
覆盖。
在查找注册的主题时,词典从未返回任何匹配项。
GetHashCode()
也应该替换为自定义实现。