public Order GetOrder(int id) { TextReader textReader = File.OpenText(dataDirectory + "/orders.txt"); var csv = new CsvReader(textReader); var orders = csv.GetRecords<Order>(); return orders.SingleOrDefault(x => x.Id == id); }
public int GetPromotionalDiscount(string coupon) { using (TextReader textReader = new StreamReader(dataDirectory + "/discounts.txt")) { var csv = new CsvReader(textReader); var discounts = csv.GetRecords<Discount>(); var discount = discounts.SingleOrDefault(x => x.Coupon == coupon); if (discount == null) throw new Exception("Coupon not found"); return discount.Percentage; } }
public void SaveOrder(Order order) { var orders = new List<Order>(); using (TextReader textReader = new StreamReader(dataDirectory + "/orders.txt")) { var csvReader = new CsvReader(textReader); orders = csvReader.GetRecords<Order>().ToList(); } var orderSaved = orders.SingleOrDefault(x => x.Id == order.Id); if (orderSaved != null) throw new Exception("Primary Constraint Exception: another object already exists with same Id"); orders.Add(order); using (TextWriter textWriter = new StreamWriter(dataDirectory + "/orders.txt")) { var csvWriter = new CsvWriter(textWriter); csvWriter.WriteRecords(orders); } }