private IEnumerable <Image> GetImagesByTags(ICollection <Guid> tagIds) { var images = GetImagesInBatch((batchSize, skip) => TrainingApi.GetImagesByTags(ProjectId, IterationId, take: batchSize, skip: skip, tagIds: tagIds.Select(x => x.ToString()).ToList())); return(images.Select(x => { var allowed = x.TagIds.Select(tagIds.Contains).ToList(); x.TagIds = x.TagIds.Where((val, i) => allowed[i]).ToList(); x.TagNames = x.TagNames.Where((val, i) => allowed[i]).ToList(); return x; })); }
/// <summary> /// 根据TagIds 获取图片 /// </summary> /// <param name="projectId"></param> /// <param name="tagsIds"></param> /// <param name="take"></param> /// <returns></returns> public List <ImageModel> GetTaggedImages(Guid projectId, List <string> tagsIds, int take) { List <ImageModel> images = trainingApi.GetImagesByTags(projectId, null, tagsIds, null, take).ToList(); return(images); }