public static ProductCollection SetAllProductDataDistinct(List <GetAllProductsDistinct_Result> allProducts) { ProductCollection collection = new ProductCollection(); using (FreeMarketEntities db = new FreeMarketEntities()) { if (allProducts != null && allProducts.Count > 0) { foreach (GetAllProductsDistinct_Result product in allProducts) { Product prodTemp = Product.GetShallowProduct(product.ProductNumber, product.SupplierNumber); prodTemp.MinPrice = product.minPrice; prodTemp.MaxPrice = product.maxPrice; PopularProduct pp = db.PopularProducts.Where(c => c.ProductNumber == prodTemp.ProductNumber && c.SupplierNumber == prodTemp.SupplierNumber).FirstOrDefault(); if (pp != null) { prodTemp.NumberSold = pp.NumberSold ?? 0; } if (prodTemp != null) { collection.Products.Add(prodTemp); } } } return(collection); } }
public static ProductCollectionPaged SetProductDataDistinct(int pageNumber, int pageSize, List <GetAllProductsByDepartmentDistinct_Result> allProducts) { ProductCollectionPaged collection = new ProductCollectionPaged(); List <Product> temp = new List <Product>(); using (FreeMarketEntities db = new FreeMarketEntities()) { if (allProducts != null && allProducts.Count > 0) { foreach (GetAllProductsByDepartmentDistinct_Result product in allProducts) { Product prodTemp = Product.GetShallowProduct(product.ProductNumber, product.SupplierNumber); prodTemp.MinPrice = product.minPrice; prodTemp.MaxPrice = product.maxPrice; PopularProduct pp = db.PopularProducts.Where(c => c.ProductNumber == prodTemp.ProductNumber && c.SupplierNumber == prodTemp.SupplierNumber).FirstOrDefault(); if (pp != null) { prodTemp.NumberSold = pp.NumberSold ?? 0; } if (prodTemp != null) { temp.Add(prodTemp); } } } collection.Products = (PagedList <Product>)temp.ToPagedList(pageNumber, pageSize); return(collection); } }