public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { JObject jobject = JObject.Load(reader); Gw2StatsRatingsObject obj = new Gw2StatsRatingsObject(); foreach (var kvp in jobject) { if (kvp.Key == "retrieve_time") { obj.RetrieveTime = ((DateTime)kvp.Value).ToUniversalTime(); } else if (kvp.Key == "results") { obj.Results = (int)kvp.Value; } else { var region = kvp.Value.ToObject <Gw2StatsRatingsRegion>(serializer); obj.Ratings.Add(kvp.Key, region.Ratings); } } return(obj); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { JObject jobject = JObject.Load(reader); Gw2StatsRatingsObject obj = new Gw2StatsRatingsObject(); foreach (var kvp in jobject) { if (kvp.Key == "retrieve_time") obj.RetrieveTime = ((DateTime) kvp.Value).ToUniversalTime(); else if (kvp.Key == "results") obj.Results = (int) kvp.Value; else { var region = kvp.Value.ToObject<Gw2StatsRatingsRegion>(serializer); obj.Ratings.Add(kvp.Key, region.Ratings); } } return obj; }