我正在阅读这个http://blog.platformular.com/2012/03/20/load-google-chart-by-ajax-using-asp-net-mvc-and-jquery/和这个https://google- developer.appspot.com/chart/interactive/docs/gallery/areachart。
如何在 VB.NET 中创建这样的数组?
var data = google.visualization.arrayToDataTable([
['Year', 'Sales', 'Expenses'],
['2004', 1000, 400],
['2005', 1170, 460],
['2006', 660, 1120],
['2007', 1030, 540]
]);
我需要从查询中创建它,而不是像上面链接到的文章中那样从静态数据中创建它:
Dim water = db.Tbl_Hydrations.Where(Function(x) x.Hyd_Create_Date >= firstDay And x.Hyd_Create_Date <= lastDay).ToList
如果我可以创建数组,我可以在图表中显示数据。谢谢你的帮助。
编辑:
我试过这个:
Function WeightAreaChartData() As JsonResult
Dim data = New Dictionary(Of String, Object)
data.Add("1", New With {.Name = "China", .Value = "11"})
data.Add("2", New With {.Name = "China", .Value = "11"})
Return Json(data, JsonRequestBehavior.AllowGet)
End Function
但是,谷歌图表说,“没有数据。”
它返回的 JSON 是:
{"1":{"Name":"China","Value":"11"},"2":{"Name":"China","Value":"11"}}
最终编辑:
这是我正在使用的操作:
<EmployeeAuthorize()>
Function WeightAreaChartData() As JsonResult
Dim myData = db.Tbl_Weights.Where(Function(x) x.Weight_Employee_ID).OrderBy(Function(x) x.Weight_Create_Date)
Dim data = New List(Of Object)
data.Add(New Object() {"Date", "Your Weight"})
For Each i As Tbl_Weight In myData
data.Add(New Object() {DateTime.Parse(i.Weight_Create_Date).Day, i.Weight_Amount})
Next
Return Json(data, JsonRequestBehavior.AllowGet)
End Function