//GetByCriterias private List <AuctionShort> GetByCriterias(string lot, string title, int sortby, bool ordrby, long event_id, int pageindex, int pagesize, out int?totalrecord) { title = String.IsNullOrEmpty(title) ? String.Empty : title.Replace(" ", "%"); var dco = new DataCacheObject(DataCacheType.RESOURCE, DataCacheRegions.AUCTIONLISTS, "GETBYCRITERIAS", new object[] { lot, title, sortby, ordrby, event_id, pageindex, pagesize }, CachingExpirationTime.Seconds_30); var result = CacheRepository.Get(dco) as TableViewResult; if (result != null && result.TotalRecords > 0) { totalrecord = result.TotalRecords; return(result.Records); } result = new TableViewResult(); totalrecord = 0; dataContext.CommandTimeout = 600000; result.Records = (from p in dataContext.spAuction_View_Search(event_id, lot, title, String.Empty, -1, -1, sortby - 1, ordrby, pageindex, pagesize, ref totalrecord) select new AuctionShort { Bids = p.Bids.GetValueOrDefault(0), CurrentBid = p.CurrentBid.GetValueOrDefault(0), Estimate = p.Estimate, IsBold = p.IsBold.GetValueOrDefault(false), IsFeatured = p.IsFeatured.GetValueOrDefault(false), IsUnsoldOrPulledOut = p.IsUnsold.GetValueOrDefault(false) || p.IsPulledOut.GetValueOrDefault(false), LinkParams = new LinkParams { ID = p.Auction_ID.GetValueOrDefault(0), EventTitle = p.EventTitle, MainCategoryTitle = p.MainCategoryTitle, CategoryTitle = p.CategoryTitle }, Lot = p.Lot.HasValue ? p.Lot.Value : (short)0, Price = p.Price.GetValueOrDefault(0), PriceRealized = p.PriceRealized.GetValueOrDefault(0), PulledOut = p.IsPulledOut.GetValueOrDefault(false), Status = p.AuctionStatus.GetValueOrDefault(0), ThumbnailPath = p.ThumbnailPath, Title = p.Title, UnsoldOrPulledOut = p.IsUnsold.GetValueOrDefault(false) ? "UNSOLD" : "WITHDRAWN" }).ToList(); result.TotalRecords = totalrecord.GetValueOrDefault(0); if (result.TotalRecords > 0) { dco.Data = result; CacheRepository.Add(dco); } return(result.Records); }