public Task <PagedSourceItemsPacket <string> > GetItemsAtAsync(int pageoffset, int count, bool usePlaceholder) { return(Task.Factory.StartNew <PagedSourceItemsPacket <string> >(() => { var item = new PagedSourceItemsPacket <string>(); item.LoadedAt = DateTime.Now; #if DEBUG // Create new stopwatch. Stopwatch stopwatch = new Stopwatch(); // Begin timing. stopwatch.Start(); #endif item.Items = loader.GetPage(pageoffset, count); #if DEBUG // Stop timing. stopwatch.Stop(); // Write result. Debug.WriteLine("FetchRange elapsed: {0} - Start: {1} - Take: {2}", stopwatch.Elapsed, pageoffset, count); #endif return item; })); }
public PagedSourceItemsPacket <T> GetItemsAt(int pageoffset, int count, bool usePlaceholder) { var ret = new PagedSourceItemsPacket <T>(); ret.LoadedAt = DateTime.Now; ///ret.Items = DLinq.DynamicQueryableExtensions.OrderBy(basequery ?? (IQueryable<T>)prv.GetQueryable(src), prv.GetColumns(src).First().Name).Skip(pageoffset).Take(count).AsEnumerable(); ret.Items = basequery.Skip(pageoffset).Take(count).AsEnumerable(); return(ret); }