// A reusable way to visit each airport in the file/datasource.
 private void ProcessAllAirports(AirportModel.Visitor visitor)
 {
     try
     {
         using (var reader = System.IO.File.OpenText(FileFinder.DatasourcePath(this, "airports.csv")))
         {
             using (var csv = new CsvHelper.CsvReader(reader))
             {
                 IEnumerable<AirportModel> file_airports = csv.GetRecords<AirportModel>();
                 foreach (var airport in file_airports)
                 {
                     visitor.AcceptAirport(airport);
                 }
             }
         }
     }
     catch(Exception e)
     {
         // Don't send any (more) entries to the visitor.
     }
 }