Eu tenho este JSON:
[
{
"Attributes": [
{
"Key": "Name",
"Value": {
"Value": "Acc 1",
"Values": [
"Acc 1"
]
}
},
{
"Key": "Id",
"Value": {
"Value": "1",
"Values": [
"1"
]
}
}
],
"Name": "account",
"Id": "1"
},
{
"Attributes": [
{
"Key": "Name",
"Value": {
"Value": "Acc 2",
"Values": [
"Acc 2"
]
}
},
{
"Key": "Id",
"Value": {
"Value": "2",
"Values": [
"2"
]
}
}
],
"Name": "account",
"Id": "2"
},
{
"Attributes": [
{
"Key": "Name",
"Value": {
"Value": "Acc 3",
"Values": [
"Acc 3"
]
}
},
{
"Key": "Id",
"Value": {
"Value": "3",
"Values": [
"3"
]
}
}
],
"Name": "account",
"Id": "2"
}
]
E eu tenho essas aulas:
public class RetrieveMultipleResponse
{
public List<Attribute> Attributes { get; set; }
public string Name { get; set; }
public string Id { get; set; }
}
public class Value
{
[JsonProperty("Value")]
public string value { get; set; }
public List<string> Values { get; set; }
}
public class Attribute
{
public string Key { get; set; }
public Value Value { get; set; }
}
Estou tentando desserializar o JSON acima usando o código abaixo:
var objResponse1 = JsonConvert.DeserializeObject<RetrieveMultipleResponse>(JsonStr);
mas estou recebendo este erro:
Não é possível desserializar a matriz JSON atual (por exemplo, [1,2,3]) no tipo 'test.Model.RetrieveMultipleResponse' porque o tipo requer um objeto JSON (por exemplo, {"nome": "valor"}) para desserializar corretamente. Para corrigir esse erro, altere o JSON para um objeto JSON (por exemplo, {"nome": "valor"}) ou altere o tipo desserializado para uma matriz ou um tipo que implementa uma interface de coleção (por exemplo, ICollection, IList) como Lista que pode ser desserializado de uma matriz JSON. JsonArrayAttribute também pode ser adicionado ao tipo para forçá-lo a desserializar de uma matriz JSON. Caminho '', linha 1, posição 1.