public static void Execute(IExchangeRatesClient client)
        {
            var model = client.GetCurrencies().Result;

            System.Console.WriteLine("ISO  Currency");
            System.Console.WriteLine("     Valid from  Valid to    ISO  Country");
            foreach (var currency in model.Currencies)
            {
                System.Console.WriteLine($"{currency.IsoCode,-3}  {currency.Name}");
                foreach (var country in currency.Countries)
                {
                    System.Console.WriteLine(
                        $"     {country.ValidityStartDate,10:yyyy-MM-dd}  {country.ValidityEndDate,10:yyyy-MM-dd}  {country.CountryIso,-3}  {country.Country}");
                }
            }
            System.Console.WriteLine();
            System.Console.WriteLine(model.ResultsInfo.TimezoneReference);
        }
Пример #2
0
        public static void Execute(IExchangeRatesClient client, AnnualTimeSeries options)
        {
            var model = client.GetAnnualTimeSeries(options.StartYear, options.EndYear,
                                                   options.BaseCurrencyIsoCode.ToUpper(),
                                                   options.CurrencyIsoCode.ToUpper()).Result;

            System.Console.WriteLine($"{model.ResultsInfo.IsoCode}  {model.ResultsInfo.Currency}");
            System.Console.WriteLine();
            System.Console.WriteLine($"Year  Rate");
            foreach (var rate in model.Rates)
            {
                System.Console.WriteLine(
                    $"{rate.ReferenceDate:0000}  {rate.AvgRate,16:N6} {model.ResultsInfo.ExchangeConventionCode,1}");
            }
            System.Console.WriteLine();
            System.Console.WriteLine("Exchange convention:");
            System.Console.WriteLine(
                $"{model.ResultsInfo.ExchangeConventionCode} {model.Rates.FirstOrDefault()?.ExchangeConvention}");
        }
Пример #3
0
        public static void Execute(IExchangeRatesClient client, DailyTimeSeries options)
        {
            var model = client.GetDailyTimeSeries(options.StartDate, options.EndDate,
                                                  options.BaseCurrencyIsoCode.ToUpper(),
                                                  options.CurrencyIsoCode.ToUpper()).Result;

            System.Console.WriteLine($"{model.ResultsInfo.IsoCode}  {model.ResultsInfo.Currency}");
            System.Console.WriteLine();
            System.Console.WriteLine($"Ref. date   Rate");
            foreach (var rate in model.Rates)
            {
                System.Console.WriteLine(
                    $"{rate.ReferenceDate:yyyy-MM-dd}  {rate.AvgRate,16:N6} {model.ResultsInfo.ExchangeConventionCode,1}");
            }
            System.Console.WriteLine();
            System.Console.WriteLine(model.ResultsInfo.TimezoneReference);
            System.Console.WriteLine("Exchange convention:");
            System.Console.WriteLine(
                $"{model.ResultsInfo.ExchangeConventionCode} {model.Rates.FirstOrDefault()?.ExchangeConvention}");
        }
        public static void Execute(IExchangeRatesClient client, MonthlyAverageRates options)
        {
            var model = client.GetMonthlyAverageRates(options.Month, options.Year,
                                                      options.BaseCurrencyIsoCodes.Select(e => e.ToUpper()),
                                                      options.CurrencyIsoCode.ToUpper()).Result;
            var exchangeConventions = model.Rates
                                      .Select(e => new { e.ExchangeConventionCode, e.ExchangeConvention }).Distinct().ToList();

            System.Console.WriteLine($"Ref. date  Rate                ISO  Currency, country");
            foreach (var rate in model.Rates)
            {
                System.Console.WriteLine(
                    $"{rate.Year:0000}-{rate.Month:00}    {rate.AvgRate,16:N6} {rate.ExchangeConventionCode,1}  {rate.IsoCode,-3}  {rate.Currency}, {rate.Country}");
            }
            System.Console.WriteLine();
            System.Console.WriteLine("Exchange convention:");
            foreach (var exchangeConvention in exchangeConventions)
            {
                System.Console.WriteLine(
                    $"{exchangeConvention.ExchangeConventionCode} {exchangeConvention.ExchangeConvention}");
            }
        }
Пример #5
0
        public static void Execute(IExchangeRatesClient client)
        {
            var model = client.GetLatestRates().Result;
            var usdExchangeConventions = model.LatestRates.Where(e => e.IsoCode != "USD")
                                         .Select(e => new { e.UsdExchangeConventionCode, e.UsdExchangeConvention }).Distinct().ToList();

            System.Console.WriteLine($"Ref. date   EUR rate          USD rate            ISO  Currency, country");
            foreach (var rate in model.LatestRates)
            {
                System.Console.WriteLine(
                    $"{rate.ReferenceDate:yyyy-MM-dd}  {rate.EurRate,16:N6}  {rate.UsdRate,16:N6} {rate.UsdExchangeConventionCode,1}  {rate.IsoCode,-3}  {rate.Currency}, {rate.Country}");
            }
            System.Console.WriteLine();
            System.Console.WriteLine(model.ResultsInfo.TimezoneReference);
            System.Console.WriteLine(model.ResultsInfo.Notice);
            System.Console.WriteLine("USD exchange convention:");
            foreach (var usdExchangeConvention in usdExchangeConventions)
            {
                System.Console.WriteLine(
                    $"{usdExchangeConvention.UsdExchangeConventionCode} {usdExchangeConvention.UsdExchangeConvention}");
            }
        }
Пример #6
0
        public static void Execute(IExchangeRatesClient client, DailyRates options)
        {
            var model = client.GetDailyRates(options.ReferenceDate,
                                             options.BaseCurrencyIsoCodes.Select(e => e.ToUpper()),
                                             options.CurrencyIsoCode.ToUpper()).Result;
            var exchangeConventions = model.Rates
                                      .Select(e => new { e.ExchangeConventionCode, e.ExchangeConvention }).Distinct().ToList();

            System.Console.WriteLine($"Ref. date   Rate                ISO  Currency, country");
            foreach (var rate in model.Rates)
            {
                System.Console.WriteLine(
                    $"{rate.ReferenceDate:yyyy-MM-dd}  {rate.AvgRate,16:N6} {rate.ExchangeConventionCode,1}  {rate.IsoCode,-3}  {rate.Currency}, {rate.Country}");
            }
            System.Console.WriteLine();
            System.Console.WriteLine(model.ResultsInfo.TimezoneReference);
            System.Console.WriteLine("Exchange convention:");
            foreach (var exchangeConvention in exchangeConventions)
            {
                System.Console.WriteLine(
                    $"{exchangeConvention.ExchangeConventionCode} {exchangeConvention.ExchangeConvention}");
            }
        }
Пример #7
0
 public ExchangeRatesClientTests()
 {
     _client = new ExchangeRatesClient(new FakeMessageHandler());
 }