你好:我有反序列化Json的問題: 這是我的JSON(字符串):C#:反序列化JSON列表
{[
{
"IdGuid": "fac5d174-17d4-4330-a65e-07133e88e0ca",
"Nombre": "Asignaturas",
"Subtitulo": "Subtitulo de asignaturas",
"Descripcion": "Descripcion de asignaturas",
"urlFoto": "egio1.jpg"
},
[
{
"IdGuid": "a9a59e49-c318-4868-93a9-57347b4c4cad",
"Nombre": "Ciencias Naturales",
"Subtitulo": "",
"Descripcion": "Ciencias",
"urlFoto": "80.jpg"
},
{
"IdGuid": "8ae0dc90-aa6a-4457-8e64-5f591f75416c",
"Nombre": "Documentos",
"Subtitulo": "",
"Descripcion": "",
"urlFoto": "asd.jpg"
},
{
"IdGuid": "2ffbe004-316d-4a82-b4fe-0c43169766ad",
"Nombre": "Inglés",
"Subtitulo": "",
"Descripcion": "",
"urlFoto": "http://pue.jpg"
},
{
"IdGuid": "62151f5c-f503-48a6-9801-c27e92aa240a",
"Nombre": "Matemática",
"Subtitulo": "",
"Descripcion": "",
"urlFoto": "http://pue.jpg"
}
]
]}
,這是我的課:
public class Asignatura
{
public String idGuid { get; set; }
public String nombre { get; set; }
public String subtitulo { get; set; }
public String descripcion { get; set; }
public String urlFoto { get; set; }
}
我需要生成帶有de JSON的Asignaturas列表。我正在嘗試
List<Asignatura> listaAsignaturas = new List<Asignatura>();
listaAsignaturas= JsonConvert.DeserializeObject<List<Asignatura>>(json);
但無效。
- 請幫我這個。
- 我使用Newtonsoft.Json
(編輯) 添加類:
public class rootAsignatura
{
public Asignatura raiz;
public List<Asignatura> listaAsignaturas;
}
,並試圖:
rootAsignatura listaAsignaturas = new rootAsignatura();
listaAsignaturas = JsonConvert.DeserializeObject<rootAsignatura>(json);
這種情況下繼續工作。
你的JSON包含頂級兩個項目:一個'Asignatura'對象+一組「Asignatura」對象。你可以修復它的結構只是一個數組?這會讓你的反序列化代碼起作用。 – MarcinJuraszek 2015-02-05 17:55:17
@MarcinJuraszek你應該發佈它作爲答案:) – DixonD 2015-02-05 17:57:05
@MarcinJuraszek假設他的JSON格式是固定的,是否有反序列化爲2個元素列表的方式:第一個元素是一個「Asignatura」,第二個元素是一個'列表'? –
2015-02-05 17:58:35