De deserializer maakt van het tekstbestand een object. (zoals je favoriten in de bier app)
(zie voorbeeldjes op website
http://james.newtonking.com/json handig om even door te lezen wat json is en hoe het is opgebouwd)
Je kunt niet zomaar een Info class gebruiken om te deserializen want deze weet helemaal niet wat die moet doen en zal niets doen of een foutmelding geven.
Als je de json data bekijkt zie je voornamelijk 3 dingen; "meta", "profile" en "content".
De "meta" is weer een collectie van wat andere data, "profile" is dit ook en "content" is gewoon een string met html.
Dus als we met het eenvoudige beginnen krijg je:
[CPP]public class StatisticsJsonObject
{
[JsonProperty("content")]
public string Content { get; set; }
}[/CPP]
De string value in [JsonProperty("content")] komt overeen met die in de data, dus dan weet de deserializer wat je wilt hebben.
Dit is al voldoende om de html content uit de json data te halen met de simpele methodes die je al eerder hebt gebruikt:
[CPP]
private async Task DownloadAsync()
{
using (var filter = new HttpBaseProtocolFilter())
{
using (var client = new HttpClient(filter))
{
var json = await client.GetStringAsync(new Uri("http://csgo-stats.com/han_tom/?ajax&_=1404672279845"));
var statistics = JsonConvert.DeserializeObject<StatisticsJsonObject>(json);
var source = statistics.Content;
}
}
}[/CPP]
Vanuit hier kun je de source weer in een htmldocument laden en data parsen.