#json
Вопрос:
Я создаю файл схемы Json, который считывается моим кодом C# при проверке файлов Json. Одно из свойств, которое я использовал, выглядит примерно так
"XOSCLockTime": {
"type": "double"
}
и это работает нормально, но для обработки нулевых значений мы должны сделать что-то вроде этого
"XOSCLockTime": {
"type": ["double", "null"]
}
и это дает ошибку, говоря, что двойное значение здесь неприемлемо?? Что здесь не так?? Обрабатываются ли для типа данных двойные нулевые значения автоматически??
это снимок моего файла схемы
"TestStationSerialNumber": {
"type": ["string", "null"]
},
"TestStationType": {
"type": ["string", "null"]
},
"X": {
"type": ["integer", "null"]
},
здесь я заменил double на integer после того, как начал получать ошибку. если я поставлю double, я получу эту ошибку в файле схемы» Значение не принято. Допустимые значения: «массив», «логическое», «целое число», «null», «число», «объект», «строка».»
Ответ №1:
double
не является типом, распознаваемым схемой JSON. Схема JSON определяет следующие типы данных: string
, number
, integer
, object
, array
, boolean
и null
.
Существует два числовых типа: integer
и number
.
Если ваши числа не являются целыми числами, то number
это тот тип, который вам нужен.
Комментарии:
1. но вопрос в том, что он распознается при использовании без нуля
2. Это полностью зависит от реализации средства проверки схемы JSON.