public async Task <PagedResultDto <ClusteringFaceDto> > QueryClusteringFaceByParams(PagedAndSortedRequestDto input) { var query = _faceRepository.GetAllIncluding(p => p.SubImageInfos); query = await _faceRepository.QueryByParams(input.Parameters, query).ConfigureAwait(false); //var faces = await GetAllAsync(input).ConfigureAwait(false); var faces = PagingAndSorting(input, query); if (input.ImageRequred == 1) { foreach (var face in faces.Items) { var imageToQuery = face.SubImageList.SubImageInfoObject; //imageType if (input.ImageType == "11" || input.ImageType == "14") { imageToQuery = imageToQuery.Where(p => p.Type == input.ImageType).ToList(); } foreach (var subImageInfo in imageToQuery) { if (string.IsNullOrEmpty(subImageInfo.ImageKey) || string.IsNullOrEmpty(subImageInfo.NodeId)) { continue; } GetImageRequest request = new GetImageRequest() { BucketName = subImageInfo.NodeId, ImageName = subImageInfo.ImageKey }; GetImageWithBytesResponse response = await _imageAppService.GetImageWithBytesAsync(request).ConfigureAwait(false); subImageInfo.Data = Convert.ToBase64String(response.ImageData); } } } return(new PagedResultDto <ClusteringFaceDto>(faces.TotalCount, ObjectMapper.Map <List <ClusteringFaceDto> >(faces.Items))); }