Json.NET сериализуется по глубине и атрибуту

Например, у нас есть два класса

class FooA
{
    [SomeSpecialAttribute]
    public int SomeValueA { get; set; }

    public int SomeValueB { get; set; }

    public int SomeValueC { get; set; }
}

class FooB
{
    public FooA FooA { get; set; }
}

Я использую Json.NET, максимальная глубина 1. При сериализации FooA он должен выводить все свойства как обычно, но при сериализации FooB он должен выводить только одно свойство FooA, которое имеет специальный атрибут. Таким образом, только при разрешении вложенных ссылочных свойств (Depth> 0) мы должны получить одно поле.

Вывод должен быть: {"FooA": {"SomeValueA": "0"}}

Есть идеи?

Ответы на вопрос(2)

Ваш ответ на вопрос