Обработка нулевых строк и целых в Json - PullRequest
0 голосов
/ 10 февраля 2009

JSON игнорирует любые параметры со значениями NULL. Поэтому, когда я создаю строку с помощью JsonConverter.ExportToString, эти свойства отсутствуют. Также любые целые числа с нулевыми значениями заменяются на -2147483648

Это становится проблемой, когда я пытаюсь десериализовать эту строку (я пишу собственный десериализатор и не использую Json.Import)

Какой лучший способ справиться с этим?

Ответы [ 2 ]

4 голосов
/ 11 февраля 2009

Я не уверен, что понимаю вопрос. JSON - это просто подмножество javascript, и свойства с нулевыми значениями можно представить так:

{"property1": 1, "property2": null}

В этом случае property1 является числовым и имеет значение 1, а property2 имеет значение null. Я не уверен, из какой библиотеки поступают вызовы Json.Import и JsonConverter.ExportToString. Во всяком случае, присвоение целому числу пустого значения является типичным «строгим типом разговора». В javascript присвоение нулю числового значения (нет такого понятия, как целое число в js) просто перестанет быть переменной числовой.

Так что, возможно, вам следует дать нам больше контекста: используемые библиотеки, язык, с которого вы используете данные (очевидно, не javascript).

0 голосов
/ 10 февраля 2009

Не могли бы вы использовать пустую строку, т.е. "" вместо нуля, и использовать номер заполнителя, например, -2147483648, чтобы указать нулевое целое значение?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...