【发布时间】:2018-03-08 01:10:09
【问题描述】:
我通过控制器发送我的 json 数据,如下所示:我在这里编写查询只是为了防止它变得复杂和混乱:
我的控制器返回这个:
public JsonResult powerConverter(string regionalManager)
foreach (DataRow dt in dt_power_conv.Rows)
{
_powerConv.turbineName.Add(dt["turbine_name"].ToString());
_powerConv.duration_hrs.Add(double.Parse(dt["duration_hrs"].ToString()));
_powerConv.abb_conv.Add(dt["abb_conv"].ToString());
_powerConv.eei_conv.Add(dt["eei_conv"].ToString());
_powerConv.leit_drive_conv.Add(dt["leit_drive_conv"].ToString());
}
return Json(_powerConv, JsonRequestBehavior.AllowGet);
}
在我看来,我通过 Ajax 调用得到它,并简单地将我的图表与它绑定:
$.ajax({
dataType: "json",
type: "POST",
url: "@Url.Action("powerConverter","Ranking")",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ "regionalManager": tmpString }),
success: function (result) {
debugger;
$("#powerChart").kendoChart({
dataSource: {
data: result
},
chartArea: {
background: "#fcfcfc",
},
series: [{
axis: "l100km",
type: "column",
// name: "DURATION",
color: "#008080",
field: "duration_hrs",
categoryField: "turbineName"
},
],
categoryAxis: {
axisCrossingValue: [0, 20],
majorGridLines: {
visible: false
},
line: {
visible: true
},
labels: {
rotation: 340
},
},
tooltip: {
visible: true,
// majorUnit:10,
template: " #= value #"
},
});
}
});
我还发布了我的 json 的屏幕截图,但它仍然无法正常工作,我将 categoryField 和字段设置为我从 json 获得的确切名称,但图表没有显示任何内容
【问题讨论】:
-
tmpString 是如何分配的?可能是 url 被传递了一个导致没有数据返回的值。如果您要取回数据,浏览器工具网络选项卡会为请求和响应显示什么?同样,当您调试控制器时,它是否获得了预期的区域管理器参数?
-
@Richard 我有 json 格式的数据,但我认为我的代码应该有问题,请问如何在图表上显示我的数据?
-
如果没有看到 json 样本就很难说。字段名称区分大小写,因此这可能是一个原因。数据字段名称似乎也有不同的命名约定,这是编码时的另一个“有趣”功能。另外,请检查您的浏览工具控制台是否有错误消息
-
@Richard 我用我的 json 屏幕截图编辑了我的问题
-
能否也为powerConverter方法添加控制器代码。如果有很多就砍掉它,只需要查看return语句以及toJson'd的值是如何设置的。
标签: kendo-ui kendo-asp.net-mvc