Je tente d'utiliser une API qui retourne la structure JSON suivante:Deserialize JSON Tableau
{
standardList: [2]
0: {
created: "/Date(1393282097000)/"
createdBy: "User Name"
envId: "1234-1234-1234"
extension: "nbsq"
id: "4826-5680-3258"
modified: "/Date(1328572097000)/"
modifiedBy: "user Name"
name: "File Name Here"
officialVer: 1
size: 1
syncMod:357275
url: "https://www.example.com"
versions: 1
}-
1: {
created: "/Date(139345635000)/"
createdBy: "User Name"
envId: "2345-2345-2345"
extension: "nbsq"
id: "4956-4538-4321"
modified: "/Date(13934425017000)/"
modifiedBy: "User Name"
name: "File Name Here"
officialVer: 1
size: 1
syncMod: 2812280243
url: "https://www.example.com"
versions: 1
}
}
Je dois désérialiser le contenu du standardList
et définir les valeurs id et name. J'ai un modèle:
public class FolderList
{
[JsonProperty("standardList")]
public Folder FolderList { get; set; }
}
public class Folder
{
[JsonProperty("envId")]
public string Id {get; set;}
[JsonProperty("name")]
public string Name {get;set;}
}
J'ai essayé de faire comme suggéré here et exécuter
JsonConvert.DeserializeObject<FolderList<Folder>>(json);
mais cela ne fonctionne pas parce que la réponse ne dispose pas d'une clé standardList
pour chaque élément, il est un tableau. Comment désérialiser dans un tableau?
EDIT: JSON Actual
{"standardList":[{"created":"\/Date(13963113097000)\/","createdBy":"User Name","envId":"1234-1234-1234","extension":"nbsq","id":"5326-0160-3098","modified":"\/Date(1396323497000)\/","modifiedBy":"User Name","name":"File Name Here","officialVer":1,"size":1,"syncMod":32350008075,"url":"https:\/\/www.example.com","versions":1},{"created":"\/Date(1334556017000)\/","createdBy":"User Name","envId":"1234-1234-1234","extension":"nbsq","id":"4728-1586-4633","modified":"\/Date(13933576017000)\/","modifiedBy":"User Name","name":"File Name Here","officialVer":1,"size":1,"syncMod":2822280170,"url":"https:\/\/www.example.com","versions":1}]}
(Il est généralement préférable de signaler/montrer * JSON *, pas une interprétation de celui-ci.) – user2864740
Cette chose de haut n'est pas valide JSON. Pouvez-vous poster le JSON réel et non ce que vous avez copié sur un navigateur ou un outil? – Joe
Vous désérialisez dans un tableau en disposant d'un tableau dans votre modèle C#. Par exemple: 'public Folder [] FolderList {get; set;}'. –