Построение значений Json с типом данных double в качестве

#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.