using Microsoft.AspNetCore.Components; using ShopOnline.Models.Dtos; using ShopOnline.Web.Services.Contracts; namespace ShopOnline.Web.Pages { public class ProductsBase : ComponentBase { [Inject] public IProductService ProductService { get; set; } public IEnumerable Products { get; set; } protected override async Task OnInitializedAsync() { Products = await ProductService.GetItems(); } protected IOrderedEnumerable> GetGroupedProductsByCategory() { return from product in Products group product by product.CategoryId into prodByCatGroup orderby prodByCatGroup.Key select prodByCatGroup; } protected string GetCategoryName(IGrouping groupedProductDtos) { return groupedProductDtos.FirstOrDefault(pg => pg.CategoryId == groupedProductDtos.Key).CategoryName; } } }