El JSON tiene que estar en este formato:Cómo devolver una matriz multidimensional como JSON para la carta jqPlot en ASP.NET MVC C#
var data = [
['Heavy Industry', 12],['Retail', 9], ['Light Industry', 14],
['Out of home', 16],['Commuting', 7], ['Orientation', 9]
];
Pero en mi método de acción no puedo encontrar la manera de construir el json que se representará en ese formato. Aquí es lo que tengo:
var json = new[] {
new[] {"Pending", summaryData.Sum(a => (int)a.Pending).ToString() },
new[] {"Completed", summaryData.Sum(a => (int)a.Completed).ToString()}
};
return Json(json, JsonRequestBehavior.AllowGet);
que devuelve el siguiente JSON:
[["Pending","146"],["Completed","914"]]
Esto se acerca a excepción de que su son comillas alrededor de los valores numéricos y jqPlot no parece que les gusta. Desafortunadamente, si trato de hacer un Int32.Parse (...), obtengo una excepción.
¿Alguna idea de cómo hacer esto mejor?
Gracias
Muchas gracias. Tuviste razón sobre la excepción (gracias por incluir eso). Agregando "objeto" fue la clave – wgpubs
También vale la pena señalar para otros aterrizar aquí desde Google - una matriz de 2 dimensiones en C# como decimal [5,10] no te da una matriz de 2 dimensiones en JSON que sale de MVC, te da una única matriz de 50 elementos. Necesita la Lista para que salga como una matriz de 2 dimensiones en JSON. –