public async Task <List <RetrieveUsersResponseDto> > GetUsers(List <string> userNames) { var listUser = new List <RetrieveUsersResponseDto>(); foreach (var userName in userNames) { var user = await GetUser(userName); if (user == null) { continue; } await cacheRepository.AddUser(user); listUser.Add(new RetrieveUsersResponseDto { Name = user.Name, Company = user.Company, Login = user.Login, NumOfFollowers = user.NumOfFollowers, NumOfPublicRepositories = user.NumOfPublicRepositories }); } listUser = listUser.OrderBy(x => x.Name).ToList(); return(listUser); }