public async Task <IViewComponentResult> InvokeAsync() { var viewModel = new ListingViewModel { CategoriesWithSubCategories = new Dictionary <CategoryViewModel, List <SubCategoryViewModel> >() }; var categories = categoryService.GetAll(); foreach (var category in categories) { var subCategories = await subCategoryService .GetAllByCategoryId(category.Id) .OrderBy(s => s.Name) .Select(s => new SubCategoryViewModel { Name = s.Name, Id = s.Id }) .ToListAsync(); viewModel.CategoriesWithSubCategories .Add(new CategoryViewModel { Name = category.Name, Id = category.Id, CssIconClass = category.CssIconClass }, subCategories); } return(View(viewModel)); }
public async Task <IActionResult> GetAllByCategoryId(int categoryId) { Response oR = new Response(); try { var lst = await _service.GetAllByCategoryId(categoryId); oR.Status = StatusCodes.Status200OK; oR.Data = lst; return(Ok(oR)); } catch (Exception ex) { oR.Status = StatusCodes.Status500InternalServerError; oR.Message = Messages.InternalServerError; return(StatusCode(StatusCodes.Status500InternalServerError, oR)); } }
private async Task <ListingPageViewModel> GetCategoriesAndSubCategoriesAsync(ListingPageViewModel result) { var categories = categoryService.GetAll(); foreach (var category in categories) { var subCategories = await subCategoryService .GetAllByCategoryId(category.Id) .OrderBy(s => s.Name) .Select(s => new SubCategoryViewModel { Name = s.Name, Id = s.Id }) .ToListAsync(); result.CategoiesAndSubCategories.CategoriesWithSubCategories .Add(new CategoryViewModel { Name = category.Name, Id = category.Id, CssIconClass = category.CssIconClass }, subCategories); } return(result); }
public IActionResult GetByCategoryId(string categoryId) { var subCategories = subCategoryService.GetAllByCategoryId(categoryId).ToList(); return(Json(subCategories)); }