Я отправляю GET-запрос в Rest API, который возвращает JSON в двух разных форматах (основываясь на некоторых внешних настройках, на которые я не могу повлиять).Я могу получить:
"content": {
"fields": [
{
"name": "test1",
"value": 1
},
{
"name": "test2",
"value": "test"
},
{
"name": "test3",
"value": "test",
"links": [...]
}
]
}
или
"content": {
"test1": 1,
"test2": "test",
"test3": "test"
}
Вы можете видеть, что я получаю список объектов, содержащих свойства name
и value
(наряду с некоторыми другими свойствамикак links
), или я получаю один объект, содержащий пары ключ-значение, как в словаре.Теперь я хочу узнать, существует ли способ условно десериализовать JSON в класс с Dictionary<string, string>
и List<Field>
свойствами, подобными этому:
[Serializable]
public class Content
{
/// <summary>
/// The Type of the Content
/// </summary>
public string _Type { get; set; }
public Dictionary<string, string> Dictionary { get; set; }
public List<Field> Fields { get; set; }
}
и заполнить словарь или список полей в зависимости отна JSON.