public async Task <IEnumerable <ScientificWorkDto> > GetApprovedWorksAsync() { var listOfScientificWorks = await _scientificWorkRepository.GetApprovedWorksAsync(); var listOfScientificWorksDto = new List <ScientificWorkDto>(); foreach (var scientificWork in listOfScientificWorks) { var authors = $"{scientificWork.MainAuthor.Name} {scientificWork.MainAuthor.Surname}"; // Sometimes the work doesn't include other authors except main one if (!(scientificWork.OtherAuthors is null)) { authors += $", {scientificWork.OtherAuthors}"; } var scientificWorkDto = new ScientificWorkDto() { Id = scientificWork.Id, Authors = authors, Title = scientificWork.Name, Description = scientificWork.Description, CreationDate = scientificWork.CreationDate.ToString("g"), // Get date of latest update of work UpdateDate = scientificWork.Versions.OrderBy(x => x.Version).Last().DateAdd.ToString("g"), Specialization = scientificWork.Specialization }; listOfScientificWorksDto.Add(scientificWorkDto); } return(listOfScientificWorksDto); }
public async Task <IEnumerable <ScientificWorkDto> > GetApprovedWorksAsync() { var listOfScientificWorks = await _scientificWorkRepository.GetApprovedWorksAsync(); return(listOfScientificWorks.Select(x => _mapper.Map <ScientificWorkDto>(x))); }