public ActionResult TransferMoney(TransferMoneyCommand transferMoney) { var fromAccount = accounts.Get(transferMoney.FromAccountId); var toAccount = accounts.Get(transferMoney.ToAccountId); if (fromAccount.CurrentBalance < transferMoney.Amount) throw new InsufficientFundsException(); fromAccount.CurrentBalance = fromAccount.CurrentBalance - transferMoney.Amount; toAccount.CurrentBalance = toAccount.CurrentBalance + transferMoney.Amount; return this.RedirectToAction("TransferMoney"); }
public ActionResult TransferMoney(TransferMoneyCommand transferMoney) { var fromAccountBalance = this.accountRepository.GetBalance(transferMoney.FromAccountId); var toAccountBalance = this.accountRepository.GetBalance(transferMoney.ToAccountId); if (fromAccountBalance < transferMoney.Amount) throw new InsufficientFundsException(); this.accountRepository.UpdateBalance(transferMoney.FromAccountId,fromAccountBalance - transferMoney.Amount); this.accountRepository.UpdateBalance(transferMoney.ToAccountId, toAccountBalance + transferMoney.Amount); return this.RedirectToAction("TransferMoney"); }