public IQueryable <Order> GetOrders(OrdersPagingParameters pagingParameters) { return(_context.Orders .Where(o => o.Id.ToString().Contains(pagingParameters.Id ?? "") && o.CustomerId.ToString().Contains(pagingParameters.CustomerId ?? "") && o.DatePlaced.ToString().Contains(pagingParameters.DatePlaced ?? "")) .Skip(pagingParameters.PageSize * (pagingParameters.PageNumber - 1)) .Take(pagingParameters.PageSize)); }
public IActionResult GetOrders(OrdersPagingParameters ordersParams) { try { var ordersFromRepo = _repo.GetOrders(ordersParams).ToList(); var orders = Mapper.Map <IEnumerable <OrderDto> >(ordersFromRepo); OrdersPagedResult result = new OrdersPagedResult { TotalResultCount = _repo.GetOrdersCount(), data = orders.ToList() }; return(Ok(result)); } catch (Exception ex) { throw new Exception(ex.Message); } }
public async Task <IActionResult> GetOrders(OrdersPagingParameters orderParams) { var uri = Microsoft.AspNetCore.WebUtilities.QueryHelpers.AddQueryString(_client.BaseAddress.ToString(), ObjectToDictionaryConverter.ConvertToDictionary(orderParams)); var orderResponse = await _client.GetAsync(uri); if (orderResponse.IsSuccessStatusCode) { var ordersStream = await orderResponse.Content.ReadAsStreamAsync(); var orders = Serializer.Deserialize <OrdersPagedResult>(ordersStream); if (orders != null) { return(StatusCode((int)orderResponse.StatusCode, orders)); } } return(StatusCode((int)orderResponse.StatusCode)); }