18 using Newtonsoft.Json;
19 using System.Collections.Generic;
30 public override bool CanConvert(Type objectType)
32 return typeof(Dictionary<string, BaseSeries>).IsAssignableFrom(objectType);
35 public override void WriteJson(JsonWriter writer,
object value, JsonSerializer serializer)
37 var series = value as Dictionary<string, BaseSeries>;
43 writer.WriteStartObject();
45 foreach (var kvp
in series.OrderBy(x => x.Value.Index)
46 .ThenBy(x => x.Value.Values.Count)
47 .ThenBy(x => x.Value.Values.Select(x => (x as ChartPoint)?.Y ?? 0).Sum()))
49 writer.WritePropertyName(kvp.Key);
50 writer.WriteRawValue(JsonConvert.SerializeObject(kvp.Value));
53 writer.WriteEndObject();
56 public override object ReadJson(JsonReader reader, Type objectType,
object existingValue, JsonSerializer serializer)
58 throw new NotImplementedException();