using System.Collections.Generic;
using System.Runtime.Serialization;
using Newtonsoft.Json.Linq;
public static void Main()
var deserialized = JsonConvert.DeserializeObject<Root>(json);
foreach (var date in deserialized.Records.Keys)
Console.WriteLine(deserialized.Records[date].Color);
private Dictionary<string, JToken> _data { get; set; }
public Dictionary<string, Preference> Records { get; set; } = new Dictionary<string, Preference>();
private void OnDeserialized(StreamingContext context)
foreach (var key in _data.Keys)
var data = _data[key].ToObject<Preference>();
public string Color { get; set; }