private List <Product> ToProducts(IList <ProductModel> models, ICommerceApi api) { var productIds = models.Select(m => m.Id).ToArray(); var products = api.Products.Query() .ByIds(productIds) .Include(p => p.Images) .Include(p => p.Variants) .ToList(); var result = new List <Product>(); foreach (var id in productIds) { var product = products.Find(p => p.Id == id); if (product != null) { result.Add(product); } } return(result); }
protected override Query <Category> Query(ICommerceApi api) { return(api.Categories.Query()); }
private List<Product> ToProducts(IList<ProductModel> models, ICommerceApi api) { var productIds = models.Select(m => m.Id).ToArray(); var products = api.Products.Query() .ByIds(productIds) .Include(p => p.Images) .Include(p => p.Variants) .ToList(); var result = new List<Product>(); foreach (var id in productIds) { var product = products.Find(p => p.Id == id); if (product != null) { result.Add(product); } } return result; }
protected abstract Query <T> Query(ICommerceApi api);
protected override Query <Brand> Query(ICommerceApi api) { return(api.Brands.Query()); }
protected override Query <Country> Query(ICommerceApi api) { return(api.Countries.Query()); }