public ActionResult CategoryEdit(AdminCategoryEditViewModel model)
        {
            if (ModelState.IsValid)
            {
                if (model.ParentId == model.CatId)
                {
                    return(View("Error"));
                }

                var cat = db.KL_Categories.FirstOrDefault(m => m.Id == model.CatId);
                if (cat is null)
                {
                    return(View("Error"));
                }

                cat.Name          = model.Name;
                cat.KL_CategoryId = model.ParentId;

                db.Entry(cat).State = EntityState.Modified;
                db.SaveChanges();

                return(RedirectToAction("CategoryDetails", new { id = model.CatId }));
            }

            return(View(model));
        }
        public ActionResult CategoryEdit(int?id)
        {
            if (id == null)
            {
                return(View("Error"));
            }

            var cat = db.KL_Categories
                      .FirstOrDefault(m => m.Id == id);

            if (cat is null)
            {
                return(View("Error"));
            }

            var model = new AdminCategoryEditViewModel {
                CatId      = cat.Id,
                Name       = cat.Name,
                ParentId   = cat.KL_CategoryId,
                Categories = new Dictionary <string, int>()
            };

            foreach (var catg in db.KL_Categories.Where(m => m.Id != id).ToList())
            {
                model.Categories.Add(catg.Name, catg.Id);
            }

            return(View(model));
        }