public ActionResult Create() { List <SelectListItem> ddlHierarchicalCategory = new List <SelectListItem>(); List <VMHierarchicalCategoryList> hierarchicalCategoryList = new List <VMHierarchicalCategoryList>(); var allCategories = _categoryService.GetList().Where(c => c.IsActive).ToList(); foreach (var item in allCategories.Where(c => c.ParentCategoryId == 0).ToList()) { VMHierarchicalCategoryList parentCategory = new VMHierarchicalCategoryList() { CategoryId = item.CategoryId, Name = item.Name, Description = item.Description }; ddlHierarchicalCategory.Add(new SelectListItem() { Text = "• " + item.Name, Value = item.CategoryId.ToString() }); FillChildCategory(parentCategory, item.CategoryId, allCategories, ddlHierarchicalCategory); hierarchicalCategoryList.Add(parentCategory); } ViewData["HierarchicalCategoryList"] = ddlHierarchicalCategory; return(View()); }
public ActionResult Edit(int id) { Session["SelectedPostId"] = id; // Bilgiler post edildiğinde post metodunda yakalayabilmek adına oluşturuldu. var post = _postService.Get(p => p.PostId == id); if (post == null) { TempData["ServiceResult"] = "There was an error while viewing the post."; TempData["AlertType"] = "danger"; return(RedirectToAction("List")); } List <SelectListItem> ddlHierarchicalCategory = new List <SelectListItem>(); List <VMHierarchicalCategoryList> hierarchicalCategoryList = new List <VMHierarchicalCategoryList>(); List <Category> allCategories = _categoryService.GetList().Where(c => c.IsActive).ToList(); foreach (var item in allCategories.Where(c => c.ParentCategoryId == 0).ToList()) { VMHierarchicalCategoryList parentCategory = new VMHierarchicalCategoryList() { CategoryId = item.CategoryId, Name = item.Name, Description = item.Description }; ddlHierarchicalCategory.Add(new SelectListItem() { Text = "• " + item.Name, Value = item.CategoryId.ToString() }); FillChildCategory(parentCategory, item.CategoryId, allCategories, ddlHierarchicalCategory); hierarchicalCategoryList.Add(parentCategory); } ViewData["HierarchicalCategoryList"] = ddlHierarchicalCategory; return(View(post)); }
public void FillChildCategory(VMHierarchicalCategoryList hierarchicalCategoryList, int parentCategoryId, List <Category> allCategories, List <SelectListItem> ddlHierarchicalCategory) { foreach (var item in allCategories.Where(c => c.ParentCategoryId == parentCategoryId).ToList()) { VMHierarchicalCategoryList childCategory = new VMHierarchicalCategoryList() { CategoryId = item.CategoryId, Name = item.Name, Description = item.Description }; hierarchicalCategoryList.ChildCategories.Add(childCategory); ddlHierarchicalCategory.Add(new SelectListItem() { Text = "".PadLeft(item.RootLevel, '-') + "> " + item.Name, Value = item.CategoryId.ToString() }); FillChildCategory(childCategory, childCategory.CategoryId, allCategories, ddlHierarchicalCategory); } }