public async Task <PagedResult <Consumer> > BrowseAsync(GetConsumers query) { if (query is null) { return(PagedResult <Consumer> .Empty); } var consumers = Consumers.AsQueryable(); if (!(query.AssetId is null)) { consumers = consumers.Where(c => c.DataRequest.DataAssetId == query.AssetId); } if (!(query.Address is null)) { consumers = consumers.Where(c => c.DataRequest.Consumer == query.Address); } if (query.OnlyWithAvailableUnits) { consumers = consumers.Where(c => c.HasAvailableUnits == query.OnlyWithAvailableUnits); } return(await consumers.OrderByDescending(c => c.VerificationTimestamp).PaginateAsync(query)); }