public static List <TimePerson> GetPersons(int yearFrom, int yearTo) { string path = "./wwwroot/personOfTheYear.csv"; string[] myFile = File.ReadAllLines(path); List <TimePerson> people = new List <TimePerson>(); for (int i = 1; i < myFile.Length; i++) { string[] column = myFile[i].Split(","); TimePerson person = new TimePerson() { Year = Convert.ToInt32(column[0]), Honor = column[1], Name = column[2], Country = column[3], BirthYear = (column[4] == "") ? 0 : Convert.ToInt32(column[4]), DeathYear = (column[5] == "") ? 0 : Convert.ToInt32(column[5]), Title = column[6], Category = column[7], Context = column[8] }; people.Add(person); } people = people.Where(x => (x.Year >= yearFrom) && (x.Year <= yearTo)).ToList(); return(people); }
public static List <TimePerson> GetPersons(int startYear, int endYear) { //read file string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "../../../wwwroot/Assets/personOfTheYear.csv"); var csvData = File.ReadAllLines(path).Skip(1); //parse csv file into objects List <TimePerson> timePeople = new List <TimePerson>(); foreach (var item in csvData) { string[] data = item.Split(','); TimePerson person = new TimePerson(); person.Year = Convert.ToInt32(data[0]); person.Honor = (data[1] == "" ? "N/A" : data[1]); person.Name = (data[2] == "" ? "N/A" : data[2]); person.Country = (data[3] == "" ? "N/A" : data[3]); person.BirthYear = (data[4] == "" ? 0 : Convert.ToInt32(data[4])); person.DeathYear = (data[5] == "" ? 0 : Convert.ToInt32(data[5])); person.Title = (data[6] == "" ? "N/A" : data[6]); person.Category = (data[7] == "" ? "N/A" : data[7]); person.Context = (data[8] == "" ? "N/A" : data[8]); timePeople.Add(person); } List <TimePerson> results = timePeople.Where(person => (person.Year >= startYear) && (person.Year <= endYear)).ToList(); return(results); }