/// <summary> /// api로 환율조회 /// </summary> /// <param name="targetType"></param> /// <param name="baseType"></param> /// <returns></returns> private decimal GetExByAPI(CurrencyTypes targetType, CurrencyTypes baseType) { string reqUrl = MakeGetCurrencyURL(targetType, baseType); string responseStr = GetRequestAPI(reqUrl); LatestT responseT = JsonConvert.DeserializeObject <LatestT>(responseStr); return(GetTargetCurrency(targetType, baseType, responseT).Price); }
/// <summary> /// api로 환율조회 /// </summary> /// <param name="targetType"></param> /// <param name="baseType"></param> /// <returns></returns> private List <FxItem> GetAllExByAPI(CurrencyTypes targetType) { List <FxItem> result = new List <FxItem>(); foreach (CurrencyTypes type in Enum.GetValues(typeof(CurrencyTypes))) { if (type != CurrencyTypes.KRW) { string reqUrl = MakeGetCurrencyURL(targetType, type); string responseStr = GetRequestAPI(reqUrl); LatestT responseT = JsonConvert.DeserializeObject <LatestT>(responseStr); result.Add(GetTargetCurrency(targetType, type, responseT)); } } return(result); }
/// <summary> /// api에서 해당 통화정보 가져옴 /// </summary> /// <param name="targetType"></param> /// <param name="data"></param> /// <returns></returns> private static FxItem GetTargetCurrency(CurrencyTypes targetType, CurrencyTypes baseType, LatestT data) { FxItem result = new FxItem(); if (data == null || data.rates == null) { return(result); } return(new FxItem { BaseCurrency = baseType.ToString(), TargetCurrency = targetType.ToString(), Price = data.rates.GetByType(targetType) }); }