Я озадачен тем, что метод DeserializeObject
не может десериализовать действительный JSON:
string source = JsonConvert.SerializeObject(data.Source);
Maintenance ticket_data = JsonConvert.DeserializeObject<Maintenance>(source); //breaks here
Когда я достигаю своей конечной точки, я получаю следующее:
"ExceptionMessage": "При анализе значения обнаружен неожиданный символ: {. Path 'elements', строка 21, позиция 5."
Я вижу, где это происходит.Elements
имеет много разных атрибутов, Elements
- это массив.
В классе Maintenance
у меня есть:
public IEnumerable<string> Elements { get; set; }
Я использовал веб-сайт JSONLint, чтобы убедиться, что source
был действительным JSON, и это так.
Класс обслуживания
Некоторые выходные данные JSON:
{
"doc_type": "ticket",
"updated_date": 12345,
"ticket_number": "1234",
"start": 1234,
"summary": "hello",
"description": "do stuff",
"active": true,
"related_tickets": [],
"tags": [],
"elements": [
{
"last_updated": 5678,
"entry_id": null,
"name": "something",
Любая идея о том, почему я не могу десериализовать этот JSON, будет принята с благодарностью.