public async Task <IActionResult> CurrencyDetails(GdaxCurrencyDetailsModel vm) { ViewData["Message"] = "GDAX Currency Details"; ViewData["Name"] = "BTC-USD"; if (vm.Symbol == null) { vm.Symbol = "BTC-USD"; } var currencyList = new List <CurrencySymbolModel> { new CurrencySymbolModel() { Display = "BTC/USD", Value = "BTC-USD" }, new CurrencySymbolModel() { Display = "BTC/EUR", Value = "BTC-EUR" } }; ViewBag.CurrencySymbols = new SelectList(currencyList, "Value", "Display"); var result = await _currencyService.GetProductTicker(vm.Symbol); return(View(result)); }
public async Task <GdaxCurrencyDetailsModel> GetProductTicker(string productId) { var result = new GdaxCurrencyDetailsModel() { Success = false, Message = "Failed to get currency details" }; var apiUrl = _config["ApiKeys:GdaxApiUrl"]; var tickerUrl = $"{apiUrl}/products/{productId}/ticker"; using (var _client = new HttpClient()) { _client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); _client.DefaultRequestHeaders.Add("User-Agent", ".NET Framework Test Client"); var response = await _client.GetStringAsync(tickerUrl); if (response.ToString().Contains("trade_id")) { result = JsonConvert.DeserializeObject <GdaxCurrencyDetailsModel>(response); result.Success = true; result.Message = "Success"; return(result); } return(result); } }