Excluyendo elementos específicos en una colección al serializar a JSON
Estoy intentando "seleccionar" qué objetos de una colección de un tipo específico quiero serializar.
Ejemplo de configuración:
public class Person
{
public string Name { get; set; }
public List<Course> Courses { get; set; }
}
public class Course
{
...
public bool ShouldSerialize { get; set; }
}
Necesito poder excluir todos los cursos en la colección Person.Courses donde ShouldSerialize es falso. Esto debe hacerse desde ContractResolver: la propiedad ShouldSerialize es un ejemplo, en mi escenario real puede haber otros criterios. Prefiero no tener que crear un ShouldSerializeCourse (como se especifica aquí)http://james.newtonking.com/json/help/index.html?topic=html/ConditionalProperties.htm )
Parece que no puedo descubrir qué método anular en el ContractResolver. ¿Cómo voy a hacer esto?