Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
ZaraZoV01
0 / 0 / 0
Регистрация: 26.12.2017
Сообщений: 5
1

Ошибка при обработке Json - Cannot deserialize the current JSON array because the type requires a JSON object

06.03.2018, 11:25. Просмотров 876. Ответов 3
Метки нет (Все метки)

Дополнительные сведения: Cannot deserialize the current JSON object (e.g. {"name":"value"}) into type 'System.Collections.Generic.List`1[HitClient.MyBook]' because the type requires a JSON array (e.g. [1,2,3]) to deserialize correctly.


Всем привет! Помогите, плиз, разобраться такой ответ загнать в лист, записей более 3 тысяч:

Ответ без массива у меня получается обрабатывать, а в такой форме никак не разумею.

Я делаю так, но что-то не выходит:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
 static class MyClass
    {        
        public static List<MyBook> MyBookL = new List<MyBook>();
    }
 
   
    class MyBook
 
    {
        public float volume{ get; set; }
        public float size { get; set; }
 
    }
C#
1
2
var jsonobj = JsonConvert.DeserializeObject<List<MyBook>>(Mstr);                     
MyClass.MyBookL = jsonobj;




Mstr =

JSON в такой форме:



JSON
1
2
"{\"alfa\":[{\"volume\":\"0.075037\",\"size\":\"0.008\"},{\"volume\":\"0.075040\",\"size\":\"3.560\"}],\"delta\":[
{\"volume\":\"0.075018\",\"size\":\"0.005\"},{\"volume\":\"0.075008\",\"size\":\"0.227\"}]}"    string
Пример:

{
"alfa": [
{
"volume": "10",
"size": "0.088"
},
{
"volume": "0.046800",
"size": "0.200"
}
],
"delta": [
{
"volume": "0.046001",
"size": "0.005"
},
{
"volume": "0.046000",
"size": "0.200"
}
]
}

Спасибо!
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.03.2018, 11:25
Ответы с готовыми решениями:

Ошибка при обработке Json - Cannot deserialize the current JSON array because the type requires a JSON object
Всем привет! Помогите, плиз, разобраться с ошибкой: An unhandled exception of type...

Как получить из строки JSON токен используя JSON.NET?
Доброго времени суток, Господа. Поскажите пожалуйста. Я никогда не работал с JSON. Вот тут решил...

Null reference при десерелизации JSON (Newtonsoft.Json)
Задача: достать из JSON ответа Название фирмы. Использую библиотеку Newtonsoft.Json. Сам код:...

Распарсить с помощью Json.Net приходящий ответ в виде JSON
Нужна помощь с json {&quot;success&quot;:true, &quot;rgInventory&quot;:{ &quot;1025429056&quot;:{...

Json.NET не нравится json - Unexpected character encountered while parsing value
Ошибка при десерилизации такого вот текста: { &quot;ishavework&quot;: false, &quot;num&quot;: null, ...

3
kolorotur
Эксперт .NET
13013 / 10175 / 2637
Регистрация: 17.09.2011
Сообщений: 17,283
Завершенные тесты: 1
06.03.2018, 11:45 2
У вас класс не соответствует входящим данным.
C#
1
2
3
4
5
6
7
8
9
10
11
12
    class Books
    {
        public List<MyBook> alfa { get; set; }
 
    }
    class MyBook
 
    {
        public float volume{ get; set; }
        public float size { get; set; }
 
    }
C#
1
2
var jsonobj = JsonConvert.DeserializeObject<Books>(Mstr);                     
MyClass.MyBookL = jsonobj.alfa;
0
ZaraZoV01
0 / 0 / 0
Регистрация: 26.12.2017
Сообщений: 5
12.03.2018, 05:47  [ТС] 3
Спасибо за наводку, попробовал, но что-то не работает. Попробую разобраться сам.
0
kolorotur
Эксперт .NET
13013 / 10175 / 2637
Регистрация: 17.09.2011
Сообщений: 17,283
Завершенные тесты: 1
12.03.2018, 08:43 4
Цитата Сообщение от ZaraZoV01 Посмотреть сообщение
что-то не работает
Всё прекрасно работает — проверено.
0
12.03.2018, 08:43
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.03.2018, 08:43

Парсинг JSON с short.pub посредством NewtonSoft.Json
Доброго времени суток. Имеется сокращалка сайтов short.pub, у которой есть API, который...

[JSON.NET] Как десериализовать Json с меняющимеся ключами?
Имеется структура Json ответа вида: { field1: { ...

Чтение JSON-файла с помощью Newtonsoft.Json
И так, у нас есть JSon-файл вот такого типа: { &quot;objects&quot;: { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.