public async Task GetBookings() { var config = Helpers.GetTestConfiguration(); var client = new HourglassClient(config); var query = new TimeBookingListQuery(); query.Filter.Start = new DateRangeFilter { From = new DateTime(2018, 01, 01), To = new DateTime(2018, 12, 31) }; var bookings = await client.TimeBookings.GetListAsync(query); }
/// <inheritdoc /> public async Task <PaginatedResult <TimeBooking> > GetListAsync(TimeBookingListQuery query, CancellationToken token = default(CancellationToken)) { if (query == null) { throw new ArgumentNullException(nameof(query)); } var urlBuilder = new StringBuilder(); urlBuilder.Append($"time_bookings.json?offset={query.Offset}&limit={query.Limit}"); var filterQuery = query.Filter.ToQueryString(); if (!string.IsNullOrEmpty(filterQuery)) { urlBuilder.Append($"&{filterQuery}"); } return(await GetListAsync <TimeBooking>(new Uri(urlBuilder.ToString(), UriKind.Relative), token).ConfigureAwait(false)); }