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");
        }