この質問は、私が以前に投稿した質問に関連しています (ここ)。
私はReactiveAsyncCommand
次のように使用しています:
LoadTickets = new ReactiveAsyncCommand(null, 0, RxApp.DeferredScheduler);
LoadTickets.RegisterAsyncFunction(x => loadTickets())
.ToProperty(this, x => x.Tickets);
Observable.Interval(TimeSpan.FromSeconds(10), RxApp.DeferredScheduler)
.InvokeCommand(LoadTickets);
LoadTickets.Execute(null); //initial load
したがって、関数の結果をリストにパイプするコマンドを 10 秒ごとに呼び出したいと思います。
ただし、最初の の後、Execute
その後の各回ではCanExecute
、コマンドの は false です。私はそれを使用して確認しました:
Observable.Interval(TimeSpan.FromSeconds(10), RxApp.DeferredScheduler)
.Subscribe(_ =>
Debug.WriteLine("Can execute in timer " + LoadTickets.CanExecute(null))
);
これが起こっている理由はありますか?