I am new to JSON serialization. Case I am making a call to a rest API and then getting info. I want to be able to extract information from the API and use it to for calculation. I am not able to serialise my data any help/guidance will be helpful my code
public string GlobalQuoteUri = "https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=MSFT&apikey=demo";
private readonly HttpClient _httpClient;
public GlobalQuoteProvider()
{
_httpClient = new HttpClient();
}
var response = await _httpClient.GetAsync(GlobalQuoteUri, cancellationToken);
if (response.IsSuccessStatusCode)
{
GlobalQuoteUriContent = await response.Content.ReadAsStringAsync();
}
var result = JsonConvert.DeserializeObject<RootGlobalQuote>(GlobalQuoteUriContent)
;
Classes
public class RootGlobalQuote
{
public string Metadata { get; set; }
public List<AlphavantageGlobalQoute> GlobalQoute { get; set; }
}
public class AlphavantageGlobalQoute
{
public Guid AlphavantageGlobalQouteId { get; set; }
[DataMember]
public string Symbol { get; set; }
[DataMember]
public string Open { get; set; }
[DataMember]
public string High { get; set; }
[DataMember]
public string Low { get; set; }
[DataMember]
public string Price { get; set; }
[DataMember]
public string Volume { get; set; }
[DataMember]
public string LatestTradingDay { get; set; }
[DataMember]
public string PreviousClose { get; set; }
[DataMember]
public string Change { get; set; }
[DataMember]
public string Changepercent { get; set; }
}
Sample data
\n \"Global Quote\": {\n \"01. symbol\": \"MSFT\",\n \"02. open\": \"134.9900\",\n \"03. high\": \"136.7200\",\n \"04. low\": \"134.6681\",\n \"05. price\": \"135.7400\",\n \"06. volume\": \"16639726\",\n \"07. latest trading day\": \"2019-08-27\",\n \"08. previous close\": \"135.4500\",\n \"09. change\": \"0.2900\",\n \"10. change percent\": \"0.2141%\"\n }\n}"