public Money Exchange(Money money, Currency targetCurrency)
        {
            if (money == null)
            {
                throw new ArgumentNullException(nameof(money));
            }
            if (targetCurrency == null)
            {
                throw new ArgumentNullException(nameof(targetCurrency));
            }

            var exchangeRates = _exchangeRateProvider.GetExchangeRatesFor(money.Currency);
            var exchangeRate  = exchangeRates[targetCurrency];

            return(new Money(money.Amount * exchangeRate, targetCurrency));
        }
        private decimal GetCurrentRate(Currency currency)
        {
            var dollarConversionRates = _provider.GetExchangeRatesFor(Currency.Dollar);

            return(dollarConversionRates[currency]);
        }