public List <ProductModels> MapProduct() { lock (obj) { var productList = db.Product.ToList(); var category = db.Category.ToList(); var subcategoria = db.SubCategory.ToList(); return(MapperObject.CreateProductList(productList, category, subcategoria)); } }
public List <ProductModels> GetProduct(int?page, int?limit, string sortBy, string direction, string searchString, out int total) { var productList = db.Product.ToList(); var categoriaList = db.Category.ToList(); var subCategoriaList = db.SubCategory.ToList(); var tamanoList = db.TamanoMascota.ToList(); var product = MapperObject.CreateProductList(productList, categoriaList, subCategoriaList, tamanoList); if (!string.IsNullOrWhiteSpace(searchString)) { product = product.Where(p => p.Descripcion1.Contains(searchString) || p.Codigo.ToString().Contains(searchString)).ToList(); } total = product.Count(); var productQueryable = product.AsQueryable(); if (!string.IsNullOrEmpty(sortBy) && !string.IsNullOrEmpty(direction)) { if (direction.Trim().ToLower() == "asc") { productQueryable = SortHelper.OrderBy(productQueryable, sortBy); } else { productQueryable = SortHelper.OrderByDescending(productQueryable, sortBy); } } if (page.HasValue && limit.HasValue) { int start = (page.Value - 1) * limit.Value; productQueryable = productQueryable.Skip(start).Take(limit.Value); } return(productQueryable.ToList()); }