private List <DeskQuote> GetQuotesFromFile() { List <DeskQuote> list = new List <DeskQuote>(); // Read file, create list of quotes StreamReader reader = new StreamReader(FILE_NAME); while (reader.EndOfStream == false) { DeskQuote quote = new DeskQuote(); string line = reader.ReadLine(); string[] fields = line.Split(','); if (line.Length == 0) { continue; } // Field order: // CustomerName, QuoteDate, QuoteAmount, RushOrderDays, DeskWidth, DeskDepth, DeskDrawerCount, DeskSurfaceMaterial quote.CustomerName = fields[0].ToString(); quote.QuoteDate = DateTime.Parse(fields[1]); quote.QuoteAmount = decimal.Parse(fields[2]); quote.RushOrderDays = (DeskQuote.RushDays)Convert.ToInt32(int.Parse(fields[3])); quote.Desk.Width = int.Parse(fields[4]); quote.Desk.Depth = int.Parse(fields[5]); quote.Desk.DrawerCount = int.Parse(fields[6]); bool comboSurfaceConverted; comboSurfaceConverted = Enum.TryParse(fields[7], out Desk.SurfaceType selectedSurface); if (comboSurfaceConverted) { quote.Desk.Surface = selectedSurface; } // Save quote to list. list.Add(quote); } // Clean up. reader.Close(); reader.Dispose(); return(list); }