Ответ почти на каждый вопрос об использовании C # с JSON , кажется, "использовать JSON.NET", но это не тот ответ, который я ищу.
Причина, по которой я говорю, заключается в том, что из всего, что я смог прочитать в документации, JSON.NET - это просто более эффективная версия DataContractSerializer, встроенная в .NET Framework ...
Это означает, что если я хочу десериализовать строку JSON, я должен определить полный строго типизированный класс для КАЖДОГО запроса, который у меня может быть. Поэтому, если мне нужно получить категории, сообщения, авторов, теги и т. Д., Я должен определить новый класс для каждой из этих вещей.
Это нормально, если я построил клиент и точно знаю, что это за поля, но я использую чужой API, поэтому я не представляю, что это за контракт, если я не скачаю образец строки ответа и не создам класс вручную из строка JSON.
Это единственный способ сделать это? Разве нет способа заставить его создать своего рода хеш-таблицу, которую можно прочитать с помощью json ["propertyname"]?
Наконец, если мне придется создавать классы самостоятельно, что произойдет, когда API изменится, и они не скажут мне (так как твиттер, кажется, печально известен этим)? Я предполагаю, что весь мой проект сломается, пока я не войду и не обновлю свойства объекта ...
Так каков же общий рабочий процесс при работе с JSON? И вообще, я имею в виду библиотечно-независимость. Я хочу знать, как это делается в целом, а не специально для целевой библиотеки ...