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}");
            }
        }
Exemple #2
0
            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++;
            }
        }