static void Main(string[] args) { try { // get xml file path var info = new DirectoryInfo(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location)); var xmlFilePath = Path.Combine(info.Parent.Parent.Parent.FullName, @"FeedData\Caulfield_Race1.xml"); var jsonFilePath = Path.Combine(info.Parent.Parent.Parent.FullName, @"FeedData\Wolferhampton_Race1.json"); var horseRepositoryxml = new HorseDataRepository(new XMLDataContext <Horse>(xmlFilePath)); var priceRepositoryxml = new PriceDataRepository(new XMLDataContext <Price>(xmlFilePath)); var horseRepositoryjson = new HorseDataRepository(new JSONDataContext <Horse>(jsonFilePath)); var priceRepositoryjson = new PriceDataRepository(new JSONDataContext <Price>(jsonFilePath)); var horseOrderingController = new HorseOrderingController(horseRepositoryxml, priceRepositoryxml, horseRepositoryjson, priceRepositoryjson); horseOrderingController.DisplayData(horseOrderingController.GetSortedHorsesByPrice()); Console.ReadLine(); } catch (Exception ex) { Console.WriteLine($"Exception: {ex}"); } }
public CashRegister() { _priceDataRepo = new PriceDataRepository(); _priceDataRepo.CalulateFinalPrices(); foreach (var price in _priceDataRepo.PriceData) { var pricingRecord = new PricingRecord { BasePrice = price, FinalPrice = _priceCalculator.CalculateFinalPrice(price, DateTime.Now) }; PriceResults.Add(pricingRecord); } }
static void Main(string[] args) { var priceDataRepo = new PriceDataRepository(); priceDataRepo.CalulateFinalPrices(); var myCashRegister = new CashRegister(priceDataRepo.PriceData, DateTime.Now); int lineNumber = 1; foreach (var priceResult in myCashRegister.PriceResults) { Debug.WriteLine(lineNumber.ToString() + ". The base price is " + priceResult.BasePrice.ToString("c") + " and the final price is " + priceResult.FinalPrice.ToString("c")); lineNumber++; } }