У меня есть строка json раньше, когда работала нормально. Теперь он не разбирается, когда я добавил вложенные элементы. Я хочу проанализировать json-массив в C#. Вот мой код json.JsonConvert не удалось разобрать
{
"Type": "Hotel",
"myArray": [{
"id": 0,
"time": ["1", "2"],
"index": 0,
"picked": [{
"id": 1,
"oc": "1"
}, {
"id": 2,
"oc": "1"
}]
}, {
"id": 1,
"time": [],
"index": 1,
"picked": []
}, {
"id": 2,
"time": [],
"index": 2,
"picked": []
}, {
"id": 3,
"time": [],
"index": 3,
"picked": []
}, {
"id": 4,
"time": [],
"index": 4,
"picked": []
}, {
"id": 5,
"time": [],
"index": 5,
"picked": []
}, {
"id": 6,
"time": ["3"],
"index": 6,
"picked": [{
"id": 3,
"oc": "1"
}]
}]
}
Я хочу, как это
JsonConvert.DeserializeObject<MyObject>(abovejsonstring)
Кто-нибудь помочь мне.
Текущая структура Класс
public class MyObject
{
public string Type { get; set; }
public List<MyArray> myArray { get; set; }
}
public class MyArray
{
public string id { get; set; }
public string[] time { get; set; }
public string index { get; set; }
public List<Picked> picked { get; set; }
}
public class Picked
{
public string id { get; set; }
public string oc { get; set; }
}
Ошибка была:
Не можете десериализации текущий объект JSON (например, { "имя": "значение"}) в тип «System.String [] ', потому что для правильного десериализации для типа требуется массив JSON (например, [1,2,3]). Чтобы исправить эту ошибку, либо измените JSON на массив JSON (например, [1,2,3]), либо измените десериализованный тип, чтобы он был обычным типом .NET (например, не примитивным типом типа integer, а не типом коллекции, например массив или список), которые можно десериализовать из объекта JSON. JsonObjectAttribute также можно добавить к типу, чтобы заставить его десериализовать объект JSON.
Какая ошибка? –
Можете ли вы показать нам, что такое ошибка? – Ajit
обновлено мое сообщение –