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); }
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}"); }
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}"); } }
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}"); } }
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}"); } }
public ExchangeRatesClientTests() { _client = new ExchangeRatesClient(new FakeMessageHandler()); }