public Task <bool> Debit(int accountID, int amount) { var debitAccountTask = Task.Run(async() => { return(await bankRepository.DebitAccount(accountID, amount)); }); var result = debitAccountTask.ContinueWith(async(t) => { return(t.Result != null ? await couchbaseRepository.DebitAccount(accountID, t.Result) : false); }, TaskContinuationOptions.OnlyOnRanToCompletion); return(result.Result); }