JSON DateTime содержит T, где начинается время - PullRequest
0 голосов
/ 10 сентября 2018

почему у моего значения Json DateTime раньше T .

  1. Это потому, что тип данных - dateTime?
  2. Могу ли я удалить T без изменения типа данных

 {
   "code": "Code",
   "date": "2018-05-02T20:02:24" //T
 },

Код внутри моего веб-API

public IEnumerable<Result> MethodName()
{
   var result = (from x in Context.Tabl1
                 select new Result
                 {
                   Code = x.Code,
                   Date = x.Date,// I dont want to apply ToString(format)
                 }).ToArray();
}

Ожидаемый результат

 {
    "code": "Code",
    "date": "2018-05-02 20:02:24" //Without T
  },

1 Ответ

0 голосов
/ 10 сентября 2018

, почему у моего значения Json DateTime раньше T.

Потому что именно так говорит ISO-8601.Существуют различные варианты значений даты / времени в ISO-8601, но все они используют букву «Т», чтобы отделить часть даты от части времени.ISO-8601, вероятно, является наиболее часто используемым форматом для машиночитаемых представлений даты и времени в виде текста.

Здесь важна машиночитаемая часть.JSON - это машиночитаемый формат, который также должен быть понятным для человека - как XML.Он не предназначен для того, чтобы не-разработчики могли использовать его напрямую.Вместо этого, уровень представления (пользовательский интерфейс, генератор отчетов, каким бы он ни был) предназначен для форматирования базовых данных («дата и время») в наиболее подходящем представлении для пользователя.При этом могут использоваться обозначения am / pm, названия месяцев, специфичные для культуры форматы и т. Д. - все они хороши для потребления человек , но затрудняют машина потребление.

Я настоятельно призываю вас , а не отойти от ISO-8601 здесь.Это наиболее подходящее представление для JSON.

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