public QueryProviderResult Execute(GreetingHistory query, PagingInfo paging) { var result = new QueryProviderResult(); if (query == null) { //Todo: Perhaps throw apropriate exception return(result); } result.Items = new List <GreetingHistory> { query }; result.TotalItems = 1; return(result); }
public QueryProviderResult Execute(DataCollector query, PagingInfo paging) { var result = new QueryProviderResult(); if (query == null) { //TODO: Perhaps throw apropriate exception return(result); } result.Items = new List <DataCollector> { query }; result.TotalItems = 1; return(result); }
protected static QueryProviderResult MakeQueryProviderResult(T query, PagingInfo paging) { var result = new QueryProviderResult(); if (query == null) { //Todo: Perhaps throw apropriate exception return(result); } result.Items = new List <T> { query }; result.TotalItems = 1; return(result); }
public QueryProviderResult Execute(IQueryOver query, PagingInfo paging) { var result = new QueryProviderResult(); if (paging.Enabled) { result.TotalItems = (int)query.RootCriteria.SetProjection(Projections.Count("*")).UniqueResult(); // .FutureValue<int>(); // query.RootCriteria.SetFirstResult(paging.Size * paging.Number); query.RootCriteria.SetMaxResults(paging.Size); } result.Items = query.RootCriteria.List(); // For Total Items - idea // http://ayende.com/blog/2334/paged-data-count-with-nhibernate-the-really-easy-way return(result); }
public QueryProviderResult Execute(IQueryable <T> query, PagingInfo paging) { var result = new QueryProviderResult(); result.TotalItems = query.Count(); if (paging.Enabled) { var start = paging.Size * paging.Number; var end = paging.Size; if (query.IsTakeEndIndex()) { end += start; } query = query.Skip(start).Take(end); } result.Items = query.AsEnumerable(); return(result); }
public QueryProviderResult Execute(IAsyncCursor <DataCollector> query, PagingInfo paging) { var result = new QueryProviderResult(); if (!query.Any()) { return(result); } var list = query.ToList(); if (paging.Enabled) { var start = paging.Size * paging.Number; list = list.Skip(start).Take(paging.Size).ToList(); } result.Items = list; result.TotalItems = list.Count; return(result); }
public QueryProviderResult Execute(IEnumerable <DataCollector> query, PagingInfo paging) { var result = new QueryProviderResult(); var dataCollectors = query.ToList(); if (!dataCollectors.Any()) { return(result); } if (paging.Enabled) { var start = paging.Size * paging.Number; dataCollectors = dataCollectors.Skip(start).Take(paging.Size).ToList(); } result.Items = dataCollectors; result.TotalItems = dataCollectors.Count; return(result); }
#pragma warning disable 1591 // Xml Comments public QueryProviderResult Execute(IDocumentQuery query, PagingInfo paging) { var queryable = query as IQueryable; var result = new QueryProviderResult(); var collection = _connection.GetCollectionFor(queryable.ElementType); _connection.Client.ReadDocumentFeedAsync(collection.DocumentsLink) .ContinueWith(r => result.TotalItems) .Wait(); /* * Todo: As of 12th of October - this is not supported by the DocumentDB Linq Provider or DocumentDB itself! * if (paging.Enabled) * { * var start = paging.Size * paging.Number; * queryable = queryable.Skip(start).Take(paging.Size); * }*/ result.Items = queryable; return(result); }