public IDisposable Start() { State = ViewModelState.Processing; return(Observable.Create <DealRowViewModel>( async obs => { _headVersion = await _dealRepo.GetAllDealUpdatesHead(); return _dealRepo.GetAllDealUpdates() .Subscribe(obs); }) .SubscribeOn(Scheduler.Default) .ObserveOnDispatcher() .Subscribe(ApplyRowUpdate)); }