我在一个视图模型中有一个订阅方法,用于侦听另一个视图模型中的发布事件。出于某种原因,我无法弄清楚,当发布方法被触发时,订阅方法会运行多次(在我的情况下每次运行四次)。我在每个发布上都有断点,除了第一次发布调用之外,它们都没有触发。
调用堆栈不会随着订阅多个调用的发生而改变。
如何找出导致多次订阅调用发生的原因?
更新:当我找到它时,原来这是一个“doh”的答案。有问题的视图模型是表格/网格线的视图模型集合,自然,添加到网格的行越多,添加到事件聚合器的订阅越多。我需要实现一些取消订阅逻辑来摆脱那些我不想要的。