private void GetUnsortedPersonsFromFiles(string[] filePaths) { foreach (string filePath in filePaths) { string course = Regex.Replace(Path.GetFileName(filePath), ".txt$", String.Empty); using (var reader = new StreamReader(filePath)) { var query = (from line in reader.AsEnumerable() let columns = line.Split(' ') select new UnsortedPerson { FirstName = columns[0], LastName = columns[1], Grade = columns[2], Course = course }).ToList(); unsortedPersonsList.AddRange(query); } } }