private IObservable <Unit> ObserveDelete() { return(DeleteCommand.ActivateGestures() .SelectMany(x => _restClient.DeleteAsync(Url).ToObservable(), (x, y) => y) .Take(1) .AsUnit() .Catch <Unit, Exception>(x => { _schedulerService.Dispatcher.Schedule(() => _messageService.Post(Constants.UI.ExceptionTitle, _exceptionFactory(x))); return ObserveDelete(); })); }