Используйте JSON. net для сериализации даты в формате yyyyMMdd без кавычек - PullRequest
0 голосов
/ 20 февраля 2020

Я создал консольное приложение do tnet, которое сериализует пользовательский объект с помощью Newtonsoft. Json v12.0.3.

Я хочу иметь возможность сериализовать свойство DateTime пользовательских объектов без кавычек.

Я пытаюсь избежать создания собственного JsonConverter или изменения типа данных на int или другие числовые типы. Я использую DateFormatConverter отсюда: { ссылка }

[JsonConverter(typeof(DateFormatConverter), "yyyyMMdd")]
[JsonProperty("fileGenerationDate", Order = 3)]
public DateTime FileGenerationDate { get; set; }

Желаемый выход:

{
    ...
    "fileGenerationDate": 20180919
}

Токовый выход:

{
    ...
    "fileGenerationDate": "20180919"
}

1 Ответ

1 голос
/ 20 февраля 2020

Вам придется создать свой собственный JsonConverter, потому что тот, который выходит из коробки, записывает значения как string, а строки всегда сериализуются с кавычками ...

Вы можете скопируйте код IsoDateTimeConverter и измените его, чтобы записать значение как int.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...