Я ищу способ сделать десериализацию от Json, чтобы быть зависимой от версии, используя данные внутри самого Json. Я ориентируюсь на использование ServiceStack.Text.JsonDeserializer
, но могу переключиться на другую библиотеку.Версия зависимая Json deserialization
Например, я хотел бы определить данные в формате JSON для v1.0 быть:
{
version: "1.0"
condition: "A < B"
}
, а затем, в следующей версии данных (скажем, 2.0) будет:
{
version: "2.0"
condition: ["A < B", "B = C", "B < 1"]
}
В конце я хочу иметь возможность проверить версию данных, чтобы знать, как правильно десериализовать JSON.
UPDATE:
Похоже, что нет какой-либо вид неявной поддержки версий зависит от формата JSON (де) сериализации в известных продуктах.
Правильное решение состоит в том, чтобы разделить задачу на (де) сериализации только части версии, а затем использовать неявные (де) сериализации для правильного типа (ов).
Благодарность всем, кто поделился знаниями и мыслями по проблеме.
Пожалуйста, дайте небольшой пример вашего намерения –
Существует только одна версия JSON. Что именно ты имеешь ввиду? – RvdK
Вы имеете в виду, что у вас есть ключ «Версия: 1.x» поверх вашего JSON? – PTwr