我的视图模型中有一些代码如下:

miService.GetSomething(par1, par2)
.ObserveOnDispatcher()
.Subscribe(dt =>
 {
    DoSomething(dt);
 });

然后在我的测试中,我正在“嘲笑”我的服务如下:

miService.Setup(ms => ms.GetSomething(....))
.Returns(Observable.Return(XYZ));

问题在于,由于观察到了观察员,因此从未执行订阅代表。

我看过一些带有调度器框架和推杆的代码,但问题是我不知道“在哪里”,我可以打电话

frame.Continue = false;
有帮助吗?

解决方案

你可以尝试

var frame = new DispatcherFrame();
Dispatcher.CurrentDispatcher.BeginInvoke(
  DispatcherPriority.Background, 
  new Action(() => frame.Continue = false));
Dispatcher.PushFrame(frame);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top