예제 #1
0
        public List <ZoneViewModel> FindAll(string sortColumn, string sortColumnDir, int skip, int pageSize, ref int totalRecords, string search)
        {
            var zones = (from zone in zoneRepository.Querable()
                         where (
                             zone.NameAr.Contains(search)
                             )
                         select zone);

            totalRecords = zones.Count();
            if (!(string.IsNullOrEmpty(sortColumn) && string.IsNullOrEmpty(sortColumnDir)))
            {
                if (sortColumnDir == "asc")
                {
                    zones = zones.OrderBy(sortColumn);
                }
                else
                {
                    zones = zones.OrderByDescending(sortColumn);
                }
            }
            return(zones.Skip(skip).Take(pageSize).ToList().Select(zone => Mapper.Map <Zone, ZoneViewModel>(zone)).ToList());
        }