Мне нужно сериализовать только первый уровень объекта с помощью JsonConvert.SerializeObject. Я пробовал MaxDepth = 1, но это свойство только для десериализации.
Желаемое поведение (панель свойств отсутствует или имеет значение null):
class Foo
{
public int First { get; set; } = 123;
public string Second { get; set; } = "smurf";
public DateTime Third { get; set; } = DateTime.Now;
public Bar Bar { get; set; } = new Bar { Fourth = 999 };
}
class Bar
{
public int Fourth { get; set; }
}
void Test(){
var foo = new Foo();
var jsonResult = JsonConvert.SerializeObject(foo);
// jsonResult:
// {
// "First": 123,
// "Second": "smurf",
// "Third": "6.4. 2020 7:16",
// }
}
Как настроить JsonConvert.SerializeObject игнорировать дочерние непримитивные объекты в сериализации? Большое спасибо.