public void DataContractJsonSerializerSerializesAggregates() { using (var stream = new MemoryStream()) { var serializer = new DataContractJsonSerializer(typeof(DataSourceResult<Person>), new [] { typeof (Person) }); var people = new[] { new Person { Age = 30 }, new Person { Age = 30 } }; serializer.WriteObject(stream, people.AsQueryable().ToDataSourceResult(1, 2, null, null, new [] { new Aggregator { Aggregate = "sum", Field = "Age" } })); var json = Encoding.UTF8.GetString(stream.ToArray()).Replace("\"__type\":\"DynamicClass2:#\",", ""); Assert.AreEqual("{\"Aggregates\":{\"Age\":{\"sum\":60}},\"Data\":[],\"Total\":2}", json); } }