Вопрос стоить костью в горле уже давно. Как мы обычно парсим json? Пишем модель данных, например C#:
{result:0}
[JsonObject(MemberSerialization.Fields)]
public class Response
{
[JsonProperty(PropertyName="result")]
int Result;
}
... и тд по вкусу. Но что если в одном случае result - это int, а в другом - это object. Вся логика уже ломается.
{result: {param1:0, param2:"hello"}
[JsonObject(MemberSerialization.Fields)]
public class Response
{
[JsonProperty(PropertyName="result")]
Result Result;
}
[JsonObject(MemberSerialization.Fields)]
public class Result
{
[JsonProperty(PropertyName="param")]
int Param;
//итд
}
И что теперь? Парсить 2 раза и ловить в try-catch? проверять как-то? а если там может быть и int, и string, и object - по 3 раза парсить? Когда остановиться?)))