public async Task AddPeopleToSystem() { try { var files = filesProvider.GetFiles().ToList(); var distinctPerson = files.Select(x => x.PersonName).Distinct().ToList(); Console.WriteLine($"Found {distinctPerson.Count} distinct people"); logger.LogInformation($"Found {distinctPerson.Count} distinct people"); foreach (var person in distinctPerson) { var personFilesToUpload = files.Where(x => x.PersonName == person).Select(x => new FileToUpload { FileName = x.Name, FileStream = x.FileStream }); var personInput = new PersonInput { Files = personFilesToUpload, Name = person }; Console.WriteLine($"Uploading {personInput.Name} person with {personInput.Files.Count()}"); logger.LogInformation($"Uploading {personInput.Name} person with {personInput.Files.Count()}"); await peopleService.CreateNew(personInput); } } catch (Exception ex) { logger.LogError(ex, "Exception when adding people"); } }
public async Task <IActionResult> Create(IFormCollection collections) { var files = mapper.Map <IEnumerable <FileToUpload> >(collections.Files); collections.TryGetValue("name", out var requestName); var response = await peopleService.CreateNew(new PersonInput { Name = requestName, Files = files }); return(Ok(new { person_id = response })); }