Как добавить комментарии к Json.NET выходным данным?

Можно ли автоматически добавлять комментарии к сериализованным выходным данным из JSON.Net?

В идеале я бы предположил, что это что-то похожее на следующее:

public class MyClass 
{
    [JsonComment("My documentation string")]
    public string MyString { get; set; }
}

или (еще лучше, если аннотаций можно избежать):

public class MyClass 
{
    /// 
    /// My documentation string
    /// 
    public string MyString { get; set; }
}

, что дало бы:

{ 
    //My documentation string
    "MyString": "Test"
}

Причина, по которой я спрашиваю, заключается в том, что мы используем Json.NET для сериализации конфигурационного файла, который позже может быть изменен вручную. Я хотел бы включить документацию в свои классы конфигурации C# и воспроизвести ее в JSON, чтобы помочь тем, кому, возможно, придется изменить файл позже.

Обновление: Как указывает RoToRa ниже, комментарии технически не допускаются в спецификации JSON (см. удобные синтаксические диаграммы по адресу http://www.json.org). Тем не менее, особенности таблицы на Json.NET siteвключает:

Поддерживает чтение и запись комментариев

и Newtonsoft.Json.JsonTextWriter.WriteComment(string)существует, который выводит комментарий. Меня интересует аккуратный способ создания комментариев, а не использование JsonTextWriterнапрямую.

19
задан Mogsdad 1 March 2018 в 13:32
поделиться