Извлечь DateTime из строки JSON

У меня есть строка:

var myJson ="[
  "2018-08-14",
  "2018-08-30",
  "2018-11-30"
]"

Из чего я пытаюсь извлечь даты, я думал, что могу использовать

JsonConvert.DeserializeObject<DateTime>(myJson)

но это вызывает ошибку Неожиданного символа.

Я мог бы, конечно, просто найти и заменить, но я подумал, может ли кто-нибудь пролить свет на мое невежество.

Спасибо, C

c#,arrays,json,

0

Ответов: 2


2 принят

Вы должны десериализовать его в коллекции DateTime, например:

var val = JsonConvert.DeserializeObject<List<DateTime>>(myJson);

2

Как я уже прокомментировал, ответ представляет собой массив, который вы можете видеть в json. Он содержит несколько дат и имеет квадратные скобки, указывающие, что это массив.

var val = JsonConvert.DeserializeObject<DateTime[]>(myJson);

или List<T>как @Alex говорит.

C #, массивы, JSON,
Похожие вопросы