Beispiel #1
0
        public double CalculateCurrency(int amount, string cur1, string cur2)
        {
            cur1 = cur1.ToUpper();
            cur2 = cur2.ToUpper();
            var availableCurrencies = this.GetCurrencyCodes();
            var calculatedCurrency  = (double)amount;

            if (!availableCurrencies.Contains(cur1) || !availableCurrencies.Contains(cur2))
            {
                throw new ArgumentOutOfRangeException("not supported currency given, you can check supported currencies under app main url directory");
            }
            if (cur1 == cur2)
            {
                return(calculatedCurrency);
            }

            if (cur1 != "PLN")
            {
                var rate = double.Parse(_connector.GetRates(cur1).Rates[0].Mid);
                calculatedCurrency *= rate;
            }
            if (cur2 != "PLN")
            {
                var rate = double.Parse(_connector.GetRates(cur2).Rates[0].Mid);
                calculatedCurrency /= rate;
            }


            return(Math.Round(calculatedCurrency, 2));
        }