public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ExpenseType expenseType = db.ExpenseTypes.Find(id);

            if (expenseType == null)
            {
                return(HttpNotFound());
            }

            try
            {
                db.ExpenseTypes.Remove(expenseType);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                ExpenseLog.Utils.ExceptionHandler exceptionHandler = new ExpenseLog.Utils.ExceptionHandler();
                this.ModelState.AddModelError("Title", exceptionHandler.GetExceptionMessage(ex));
                return(View("Edit", expenseType));
            }
        }
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ExpenseEntity expenseEntity = db.ExpenseEntities.Find(id);

            if (expenseEntity == null)
            {
                return(HttpNotFound());
            }
            string expenseEntityName = expenseEntity.ExpenseEntityName;

            try
            {
                db.ExpenseEntities.Remove(expenseEntity);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                string errorMessage = String.Empty;
                try
                {
                    string userId = User.Identity.GetUserId();
                    ViewBag.ExpenseTypeID = new SelectList(db.ExpenseTypes.Where(x => x.UserId == userId), "ID", "Title", expenseEntity.ExpenseTypeID);
                }
                catch (Exception ex2)
                {
                    ViewBag.Title       = $"Delete Expense Entity:  (#{id}) : {expenseEntityName}";
                    ViewData["message"] = ex2.GetBaseException().Message;
                    ViewData["trace"]   = ex.StackTrace;
                    return(View("ErrorDescr"));
                }
                ExpenseLog.Utils.ExceptionHandler exceptionHandler = new ExpenseLog.Utils.ExceptionHandler();
                this.ModelState.AddModelError("ExpenseEntityDescription", exceptionHandler.GetExceptionMessage(ex));
                return(View("Edit", expenseEntity));
            }
        }