/// <summary> /// Adds instance of AccountDTO to storage. /// </summary> /// <param name="account"> /// AccountDTO instance. /// </param> public void Create(AccountDTO account) { if (account == null) { throw new ArgumentNullException(nameof(account), message: "Cannot create account with null"); } using (var db = new AccountContext()) { db.Accounts.Add(account); db.SaveChanges(); } }
/// <summary> /// Removes AccountDTO instance from storage. /// </summary> /// <param name="id"> /// Used to determine account to remove. /// </param> public void Delete(int id) { using (var db = new AccountContext()) { var account = new AccountDTO() { AccountDTOId = id }; db.Accounts.Attach(account); db.Accounts.Remove(account); db.SaveChanges(); } }
/// <summary> /// Replaces AccountDTO instance in storage with given account with the same account number. /// </summary> /// <param name="account"> /// Account to replace with. /// </param> public void Update(AccountDTO account) { if (account == null) { throw new ArgumentNullException(nameof(account), message: "Cannot update null"); } using (var db = new AccountContext()) { var accountToUpdate = db.Accounts.Where(acc => acc.AccountDTOId == account.AccountDTOId).FirstOrDefault(); if (accountToUpdate != null) { accountToUpdate.AccountOwner = account.AccountOwner; accountToUpdate.AccountType = account.AccountType; accountToUpdate.AccountSum = account.AccountSum; accountToUpdate.BonusScore = account.BonusScore; } db.SaveChanges(); } }