powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / десерилизация JSON
7 сообщений из 7, страница 1 из 1
десерилизация JSON
    #39929153
RegisteredUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги!
Есть проблема при делсерилизации ответа.
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
-- json #1 с данными -- здесь все ОК

{
  "status": 1,
  "result": {
    "price": 37,
    "totalPrice": 0
  }
}


Код: html
1.
2.
3.
4.
5.
6.
-- json #2 без данных -- здесь ошибка

{
  "status": 0,
  "result": []
}


Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
// модель описана так:

[JsonObject(ItemNullValueHandling = NullValueHandling.Ignore)]
public class Resp
{
    public int status { get; set; }
    public Result result { get; set; }
} 
[JsonProperty(PropertyName = "result")]
public class Result
{
    public int price { get; set; }
    public int totalPrice { get; set; }
}


Проблема с десерилизацией пустого ответа (-- json #2 без данных --): Cannot deserialize the current JSON array (e.g. [1,2,3]) into type .......

Хотелось бы просто получить там null и всё.
...
Рейтинг: 0 / 0
десерилизация JSON
    #39929187
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так не присылай в ответе "result" либ присылай "result": null
а так "result": [] ты ожидаешь массив
...
Рейтинг: 0 / 0
десерилизация JSON
    #39929325
RegisteredUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
handmadeFromRu
так не присылай в ответе "result" либ присылай "result": null
а так "result": [] ты ожидаешь массив


я не могу воздействовать на ответ - это стороннее API.
...
Рейтинг: 0 / 0
десерилизация JSON
    #39929331
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RegisteredUser
handmadeFromRu
так не присылай в ответе "result" либ присылай "result": null
а так "result": [] ты ожидаешь массив


я не могу воздействовать на ответ - это стороннее API.

Кривое апи. Тогда только дергать его как строку и парсить руками.
...
Рейтинг: 0 / 0
десерилизация JSON
    #39929514
RegisteredUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
fkthat
RegisteredUser
пропущено...


я не могу воздействовать на ответ - это стороннее API.

Кривое апи. Тогда только дергать его как строку и парсить руками.


а нет варианта "уведомить" десерелизатор, что вот такое [] расценивать как null ?
...
Рейтинг: 0 / 0
десерилизация JSON
    #39929542
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RegisteredUser

а нет варианта "уведомить" десерелизатор, что вот такое [] расценивать как null ?

пиши свой кастом JsonConverter и переопредели ReadJson. погуглив поймешь о чем речь
...
Рейтинг: 0 / 0
десерилизация JSON
    #39929662
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RegisteredUser
а нет варианта "уведомить" десерелизатор, что вот такое [] расценивать как null ?

А если там непустой массив придет - то как его расценивать?
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / десерилизация JSON
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]