Я пытаюсь сгенерировать линейную диаграмму на основе информации, хранящейся в моей базе данных SQL Server, но я не могу понять, почему я не могу это сделать
Я тщательно изучил, почему это не работает. Я сузил проблему до вызова моего кода C # из моего JavaScript
C#
public List<object> getLineChartData(string mobileId_one, string
mobileId_two, string year)
{
//Set up lists
List<object> iData = new List<object>();
List<string> labels = new List<string>();
//Query to database
string query1 = "Select TOP 10 * from AutoregulationScores WHERE
UserID='"+ Session["UID"] +"' ORDER BY ScoreID DESC";
//Call common function get data method
DataTable dtLabels = commonFuntionGetData(query1);
//Get session IDs for x axis labels
foreach (DataRow drow in dtLabels.Rows)
{
labels.Add(drow["SessionID"].ToString());
}
//Add to object list
iData.Add(labels);
//Call common function get data method
DataTable dtDataItemsSets_1 = commonFuntionGetData(query1);
List<int> lst_dataItem_1 = new List<int>();
foreach (DataRow dr in dtDataItemsSets_1.Rows)
{
//Add autoregulation scores to list
lst_dataItem_1.Add(Convert.ToInt32(dr["AutoregulationScore"].ToString())
);
}
//Add to object list
iData.Add(lst_dataItem_1);
return iData;
}
public DataTable commonFuntionGetData(string strQuery)
{
SqlConnection con = new SqlConnection(conString);
SqlDataAdapter dap = new SqlDataAdapter(strQuery, con);
DataSet ds = new DataSet();
dap.Fill(ds);
return ds.Tables[0];
}
HTML + JavaScript
<div> <canvas id="myChart"> </canvas></div>
<script>
var aData = reponse.d;
var aLabels = aData[0];
var aDatasets1 = aData[1];
var data = {
labels: aLabels,
datasets: [{
label: "My First dataset",
fillColor: "rgba(220,220,220,0.2)",
strokeColor: "rgba(220,220,220,1)",
pointColor: "rgba(220,220,220,1)",
pointStrokeColor: "#fff",
pointHighlightFill: "#fff",
pointHighlightStroke: "rgba(220,220,220,1)",
data: aDatasets1
}]
};
var ctx = $("#myChart").get(0).getContext('2d');
ctx.canvas.height = 300; // setting height of canvas
ctx.canvas.width = 500; // setting width of canvas
var lineChart = new Chart(ctx).Line(data, {
bezierCurve: false});
function OnErrorCall_(repo) {
alert("Woops something went wrong, pls try later !");
};
</script>
То, что я должен видеть, - это простая, но интерактивная линейная диаграмма, но я не могу видеть, где я иду не так