public async Task <double> BuyTransfers(double amount, CurrencyCodes currencyCode) { try { string partition = currencyCode.ToString(); string row = DateTime.Now.ToString("yyyy-MM-dd"); var exchange = await _azureTableStorage.RetrieveExchangeRateUsingPointQueryAsync(partition, row); var exchangerate = new { Multiplier = exchange.Multiplier, BuyTransfers = exchange.BuyTransfers }; if (exchangerate == null) { _log.LogError("Unable to get latest exchangerate for: {0} ", currencyCode.ToString()); throw new ArgumentException("Could not get the exchangerate for this currency"); } return(convert(exchangerate.Multiplier, amount, Convert.ToDouble(exchangerate.BuyTransfers))); } catch (Exception ex) { _log.LogError(ex.Message, ex); throw; } }