public void GenerateExchangeBehaviour(object sender, ElapsedEventArgs elapsedEventArgs) { foreach (var cryptocurrency in Currencies) { cryptocurrency.LastPrice = GenerateRates(cryptocurrency.LastPrice, cryptocurrency.MinValue, cryptocurrency.MaxValue); } var ratesGenerated = new NewExchangeRatesEventArgs { CurrenciesList = Currencies }; if (NewExchangeRatesEvent != null) { NewExchangeRatesEvent.Invoke(ratesGenerated); } }
private void GetRates() { var httpClient = new HttpClient(); var btcResponse = httpClient.GetAsync(_currencyExchangeConfig.BitBayBtcPlnAddress).Result.Content.ReadAsStringAsync().Result; var bccResponse = httpClient.GetAsync(_currencyExchangeConfig.BitBayBccPlnAddress).Result.Content.ReadAsStringAsync().Result; var ethResponse = httpClient.GetAsync(_currencyExchangeConfig.BitBayEthPlnAddress).Result.Content.ReadAsStringAsync().Result; var ltcResponse = httpClient.GetAsync(_currencyExchangeConfig.BitBayLtcPlnAddress).Result.Content.ReadAsStringAsync().Result; Currencies.Single(c => c.CurrencyName == CurrencyNameEnum.Btc).LastPrice = JsonConvert.DeserializeObject <DownloadedData>(btcResponse).Last; Currencies.Single(c => c.CurrencyName == CurrencyNameEnum.Bcc).LastPrice = JsonConvert.DeserializeObject <DownloadedData>(bccResponse).Last; Currencies.Single(c => c.CurrencyName == CurrencyNameEnum.Eth).LastPrice = JsonConvert.DeserializeObject <DownloadedData>(ethResponse).Last; Currencies.Single(c => c.CurrencyName == CurrencyNameEnum.Ltc).LastPrice = JsonConvert.DeserializeObject <DownloadedData>(ltcResponse).Last; var ratesDownloaded = new NewExchangeRatesEventArgs { CurrenciesList = Currencies }; if (NewExchangeRatesEvent != null) { NewExchangeRatesEvent.Invoke(ratesDownloaded); } }