J'ai une chaîne:
[
{
"key": "key1",
"value": "{'Time':'15:18:42','Data':'15:18:42'}",
"duration": 5
},
{
"key": "key1",
"value": "{'Time':'15:18:42','Data':'15:18:42'}",
"duration": 5
}
]
Ma classe en modèles:
public class CPacket
{
public string key { get; set; }
public string value { get; set; }
public int duration { get; set; }
}
J'utilise Json.Net, je veux convertir la chaîne ci-dessous en Json Oject.
CPacket c = JsonConvert.DeserializeObject<CPacket>(strPostData);
Mais c'est une erreur:
Une exception de type "Newtonsoft.Json.JsonSerializationException" s'est produite dans Newtonsoft.Json.dll mais n'a pas été gérée dans le code utilisateur
Informations supplémentaires: Impossible de désérialiser le tableau JSON actuel (par exemple [1,2,3]) dans le type 'QuoteAPI.Models.CPacket' car le type nécessite un objet JSON (par exemple {"nom": "valeur" }) pour désérialiser correctement.
Votre JSON représente un tableau d'objets CPacket
, pas seulement un seul objet. Vous devez désérialiser dans une liste.
List<CPacket> list = JsonConvert.DeserializeObject<List<CPacket>>(strPostData);