public async Task <IEnumerable <User> > DecorateAsync(IEnumerable <User> users) { if (users == null) { return(null); } // Get all user data matching supplied users var results = await _userDataStore.QueryAsync() .Select <UserDataQueryParams>(q => { q.UserId.IsIn(users.Select(u => u.Id).ToArray()); }) .ToList(); if (results == null) { return(users); } // Merge data into users return(await MergeData(users.ToList(), results.Data)); }