私はlinqを学び、mvcのコントローラーからjsonの結果を生成するのに数日を費やしました。ただし、現在、Y軸データの合計(累積合計)値をローリングして年初来の折れ線グラフを作成したいという問題に悩まされています。
簡単な月次データを生成するための現在の私のコードは次のとおりです。
//Generic Json For Graphs
public JsonResult GetJSONYTD(int kpiID)
{
var ViewData =
(from kpidata in departmentrepo.GetGraphData(kpiID)
select new DepartmentOverviewDetailsViewModel.GraphJSONViewModel
{
XData = kpidata.Year.Year1 + "-"
+ kpidata.Month.Real_Month_Int + "-01",
YData = kpidata.Value
});
var ChartData = ViewData.Select(
x => new object[] { x.XData, x.YData }).ToArray();
return Json(ChartData, JsonRequestBehavior.AllowGet);
}
上記により、次の配列が生成されます。
[
["2011-10-01",0],
["2011-11-01",22],
["2011-12-01",22],
["2012-1-01",14],
["2012-2-01",14.4],
["2012-3-01",17.5],
["2012-4-01",20.3],
["2012-5-01",23.5],
["2012-6-01",24.5],
["2012-7-01",26.5]
]
出力したい:
[
["2011-10-01",0],
["2011-11-01",22],
["2011-12-01",44],
["2012-1-01",38],
["2012-2-01",52.4],
etc
]
何か助けはありますか?