//// GET api/values //[HttpGet] //public ActionResult<IEnumerable<CurrencyGetViewModel>> GetPaged() //{ // var currenciesMap = GetIsoCodeCurrenciesMap(); // return currenciesMap.Values; //} private Dictionary <string, CurrencyGetViewModel> GetIsoCodeCurrenciesMap() { if (IsoCodeCurrenciesMap.Keys.Count > 0) { return(IsoCodeCurrenciesMap); } ////var customSettings = CustomSettings.Value; //var customSettings = CustomSettings; //Console.WriteLine(customSettings.Currency.DefaultIsoCode); //var currenciesSettings = CurrenciesSettings.Value; //var currenciesSettings = CurrenciesSettings; //Console.WriteLine(currenciesSettings.DefaultIsoCode); //var currenciesSettings = CurrenciesSettings; //var isoCodeCurrenciesMap = // new Dictionary<string, CurrencyGetViewModel>(StringComparer.CurrentCultureIgnoreCase); var normalisedDefaultIsoCode = CurrenciesSettings.DefaultIsoCode?.ToUpper().Trim(); foreach (var currenciesItem in CurrenciesSettings.Currencies) { try { var normalisedIsoCode = currenciesItem.IsoCode?.ToUpper().Trim(); var currencyGetViewModel = new CurrencyGetViewModel( normalisedIsoCode, currenciesItem.Symbol, currenciesItem.Name) { IsDefault = normalisedIsoCode == normalisedDefaultIsoCode }; IsoCodeCurrenciesMap.Add( normalisedIsoCode, currencyGetViewModel); //bool wasAddSuccessful = currenciesMap.TryAdd( // normalisedIsoCode, // currencyGetViewModel); } catch (ArgumentException ex) { // throw; Logger.LogWarning("{@Ex}", ex); } } return(IsoCodeCurrenciesMap); }
//// GET api/values/5 //[HttpGet("{isoCode}")] //[ProducesResponseType(StatusCodes.Status404NotFound)] //[ProducesDefaultResponseType] //[ProducesResponseType(StatusCodes.Status200OK)] //public ActionResult<CurrencyGetViewModel> Get(string isoCode) //{ // if (isoCode == null) // { // return BadRequest(); // } // var isoCodeCurrenciesMap = GetIsoCodeCurrenciesMap(); // if (isoCodeCurrenciesMap == null) // { // return NotFound(); // } // var key = isoCode.Trim(); // if (isoCodeCurrenciesMap.ContainsKey(key)) // { // return isoCodeCurrenciesMap[key]; // } // return NotFound(); //} private Dictionary <string, CurrencyGetViewModel> GetIsoCodeCurrenciesMap() { if (IsoCodeCurrenciesMap.Keys.Count > 0) { return(IsoCodeCurrenciesMap); } var normalisedDefaultIsoCode = CurrenciesSettings.DefaultIsoCode?.ToUpper().Trim(); foreach (var currenciesItem in CurrenciesSettings.Currencies) { try { var normalisedIsoCode = currenciesItem.IsoCode?.ToUpper().Trim(); var currencyGetViewModel = new CurrencyGetViewModel( normalisedIsoCode, currenciesItem.Symbol, currenciesItem.Name) { IsDefault = normalisedIsoCode == normalisedDefaultIsoCode }; IsoCodeCurrenciesMap.Add( normalisedIsoCode, currencyGetViewModel); } catch (ArgumentException ex) { Logger.LogWarning("{@Ex}", ex); } } return(IsoCodeCurrenciesMap); }