public async Task <Precipitation> GetPrecipitation(int placeId) { var precipitationTable = _cloudTableClientProvider.Get().GetTableReference("precipitation"); var query = new TableQuery <PrecipitationEntity>() .Where(TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, placeId.ToString())); TableQuerySegment <PrecipitationEntity> resultsSegment = await precipitationTable.ExecuteQuerySegmentedAsync(query, null); double[] averages = resultsSegment.OrderBy(it => Convert.ToInt32(it.RowKey)) .Select(it => it.Average).ToArray(); return(new Precipitation { MonthlyAverages = averages }); }
public async Task <IEnumerable <Models.Service> > GetServices(string serviceType) { try { TableQuery <Models.Service> serviceQuery = new TableQuery <Models.Service>() .Where(TableQuery.GenerateFilterCondition("Type", QueryComparisons.Equal, serviceType)); TableQuerySegment <Models.Service> servicesQuery = await _table.ExecuteQuerySegmentedAsync(serviceQuery, null); IOrderedEnumerable <Models.Service> services = servicesQuery .OrderBy(s => s.Date.Year) .ThenBy(s => s.Date.Month) .ThenBy(s => s.Date.Day); return(services.ToList()); } catch (Exception e) { throw new Exception("Could not get services", e); } }