using System.Collections.Generic;
using System.Collections;
using Newtonsoft.Json.Linq;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Serialization;
public string name { get; set; }
public string lastname { get; set; }
public int age { get; set; }
public string someMoreDataThatShouldNotBeSerialized { get; set; }
public class EmployeeContainer
public IEnumerable<Employee> Employees { get; set; }
public static IEnumerable<EmployeeContainer> GetAllEmployeeContainers()
new Employee { name = "John", lastname = "Coleman", age = 42, someMoreDataThatShouldNotBeSerialized = "someMoreData1" },
new Employee { name = "Chip", lastname = "Dale", age = 26, someMoreDataThatShouldNotBeSerialized = "someMoreData2" },
new Employee { name = "Ann", lastname = "Smith", age = 33, someMoreDataThatShouldNotBeSerialized = "someMoreData3" },
new Employee { name = "Terry", lastname = "Johnson", age = 24, someMoreDataThatShouldNotBeSerialized = "someMoreData4" },
public static void Test()
var X = GetAllEmployeeContainers();
var employees = X.SelectMany(s => s.Employees ?? Enumerable.Empty<Employee>()).Select(e => new { name = e.name, lastname = e.lastname, age = e.age });
var json = JsonConvert.SerializeObject(employees, Formatting.Indented);
public static void Main()