public static List <MenuResult> GetCategoryMenu(this IGenericRepository <Category> categoryRepository) { var parentCategories = GetAllCategory(categoryRepository); var menuResultList = new List <MenuResult>(); foreach (Category parentCategory in parentCategories) { MenuResult menuResult = new MenuResult(); menuResult.ParentCategoryId = parentCategory.CategoryId; menuResult.ParentCategoryName = parentCategory.Name; var subCategories = categoryRepository.Find(x => x.ParentCategoryId == parentCategory.CategoryId && x.IsDeleted != true && x.Published == true).OrderBy(z => z.GroupDisplayOrder) .ThenBy(y => y.CategoryGroupTag).ThenBy(g => g.DisplayOrder); menuResult.SubMenu = new List <SubMenuResult>(); foreach (Category category in subCategories) { SubMenuResult subMenuResult = new SubMenuResult(); subMenuResult.SubCategoryId = category.CategoryId; subMenuResult.SubCategoryName = category.Name; subMenuResult.CategoryGroupTag = category.CategoryGroupTag; menuResult.SubMenu.Add(subMenuResult); } menuResultList.Add(menuResult); } return(menuResultList); }
public List <SubMenuResult> GetSubMenu(int categoryId) { var subCategorylist = _unitOfWork.CategoryRepository.Find(x => (x.ParentCategoryId == categoryId) && x.IsDeleted != true).ToList(); var subMenuResultList = new List <SubMenuResult>(); foreach (VSOnline.VSECommerce.Persistence.Entity.Category category in subCategorylist) { SubMenuResult subMenuResult = new SubMenuResult(); subMenuResult.SubCategoryId = category.CategoryId; subMenuResult.SubCategoryName = category.Name; subMenuResultList.Add(subMenuResult); } return(subMenuResultList); }