我正在构建一个Asp.Net应用程序。我有这个文件
在TimeDomain.cshtml
中,我想显示一个图表,该图表的数据在数据库中。这是我控制器的代码:
public ActionResult TimeFrequency()
{
ArrayList arrayValue = new ArrayList();
arrayValue.Add(0.5);
arrayValue.Add(0.1);
arrayValue.Add(0.5);
arrayValue.Add(0.5);
arrayValue.Add(0.3);
arrayValue.Add(0.8);
ViewBag.ArrayValue = arrayValue;
return View();
}
在TimeDomain.cshtml
中,我有以下代码来显示具有随机值的图表:
var myConfig = {
type: 'bar',
backgroundColor: "#FFF",
plot: {
lineColor: "rgba(151,187,205,1)",
lineWidth: "2px",
backgroundColor2: "rgba(151,187,205,1)",
marker: {
backgroundColor: "rgba(151,187,205,1)",
borderColor: "white",
shadow: false
}
},
plotarea: {
backgroundColor: "white"
},
series: [{
values: getRandomValue(),
lineColor: "rgba(220,220,220,1)",
lineWidth: "2px",
alpha: 0.5,
borderWidth: "2px",
borderColor: "#C7C7C7",
borderTop: "2px solid #C7C7C7",
borderBottom: "0px",
backgroundColor1: "rgba(220,220,220,1)",
backgroundColor2: "rgba(220,220,220,1)",
marker: {
backgroundColor: "rgba(220,220,220,1)",
}
}]
}
在此行代码中:
values:getRandomValue(),
方法getRandomValue
返回一个值数组。我想删除此方法并从控制器
ViewBag.ArrayValue = arrayValue;
我该怎么做?
答案 0 :(得分:1)
您可以像这样将c#数组转换为js数组
var jsArray= @Html.Raw(Json.Serialize(ViewBag.ArrayValue));
答案 1 :(得分:0)
您必须在JavaScript变量中使用ViewBag.ArrayValue
,如下所示:
<script type="text/javascript">
var dataArray= @Html.Raw(Json.Serialize(ViewBag.ArrayValue));
</script>
按如下所示在图表配置的myConfig
中更改代码
values:dataArray