Веб-сервисы, к которым я подключаюсь, чтобы отправить в ответ на наши запросы некоторые данные JSON, организованные странным образом (без сомнения, они сделали это неправильно, но мы не можем их изменить).
Я совершенно новичок вC # и удалось десериализовать некоторые более стандартные объекты JSON с использованием DataContract и DataContractJsonSerializer.
Однако я довольно озадачен тем извращенным JSON, который мы получаем.В нашем java-клиенте (Android) мы просто решили использовать простой JSON-анализатор, который пропускает вставленные дополнительные массивы.Мне бы хотелось узнать мнение опытных разработчиков о том, как десериализовать этот искаженный JSON.
Вот что отправит веб-служба для получения некоторых сведений о пользователе и объекту C #, которому она должна соответствовать:
C #
class Buddy
{
public String Login { get; set; }
public String Password { get; set; }
public List<Purchase> { get; set; }
}
class Purchase
{
public Int64 ItemId { get; set; }
public Int32 Quantity { get; set; }
}
JSON
[
{
"buddy":
[
{
"login": "johndoe",
"password": "pwd",
"purchase_list":
[
{
"purchase":
[
{
"item_id": 1654,
"qty": 1
}
]
},
{
"purchase":
[
{
"item_id": 654,
"qty": 2
}
]
}
]
}
]
}
]