public IActionResult Deposit([Bind] Models.Transaction trans) { lock (transactionLock) { using (var ts = new TransactionScope()) { try { _transactionDAL.AddTransaction(new Models.Transaction { AccountNumber = trans.AccountNumber, Amount = trans.Amount, Type = "DEPOSIT" }); ViewData["SuccessMessage"] = "Deposit success"; var accountNumber = Convert.ToInt64(HttpContext.User.Identity.Name); var user = _userDAL.GetUserData(accountNumber); ViewData["LoginName"] = user.LoginName; ViewData["AccountNumber"] = accountNumber; ViewData["Balance"] = _transactionDAL.GetBalance(accountNumber); ts.Complete(); return(View()); } catch (Exception e) { ViewData["Message"] = e.Message; ts.Dispose(); return(View()); } } } }
/// <summary> ///passing the object to the DAL /// </summary> /// <param name="t1">object</param> public void AddTranscation(Transaction t) { try { if (account != null) { SavingsAccount result = account.GetAccountByAccountNumber(t.AccountNumber); if (result != null) { transactionDAL.AddTransaction(t); } else { throw new TransactionException("Wrong Data"); } } } catch (TransactionException) { throw; } }