private async Task <FxRate> GetFxRate(string currencyCodeToSearch, DateTime dateToSearch) { var fxRateCacheKey = $"{dateToSearch.ToString("yyyyMMdd", CultureInfo.InvariantCulture)}_{currencyCodeToSearch}"; _cachedFxRates.TryGetValue(fxRateCacheKey, out var fxRate); if (fxRate == null) { fxRate = await _masterDataRepository.GetFxRateAsync(dateToSearch, currencyCodeToSearch); if (fxRate != null) { _cachedFxRates.Add(fxRateCacheKey, fxRate); } } return(fxRate); }
public async Task <FxRate> GetFxRateAsync(DateTime fxRateDate, string currencyCode) { return(await _masterDataRepository.GetFxRateAsync(fxRateDate, currencyCode)); }