2

我有一个视图,我想在其中显示带有 HighChart 的部分视图列表。

控制器:

public ActionResult PartialChart(String lName)
    {
        ReportDict = TempData["Report_Dict"] as Dictionary<ReportElement, List<Shift>>;
        DotNet.Highcharts.Highcharts chart = new DotNet.Highcharts.Highcharts("chart")
        .SetTitle(new Title { Text = lName + " Output" })
        .SetXAxis(new XAxis
        {
            Categories = HCharExt.getCategoriesDate(ReportDict)
        })
        .InitChart(new Chart { Width = 500, Height = 300 })
        .SetSeries(new Series
        {
            Name = lName + " Output",
            Data = new Data(HCharExt.getLineSerie(ReportDict, "output", lName))
        });

        return PartialView(chart);
    }

看法:

@{
    ViewBag.Title = "CompleteReport";
}
<h2>Report</h2>

<ul>
@foreach (var l in ViewBag.RepDict)
{
    <li>
    @Html.Action("PartialChart", "Report", new { lName = l.Key.Line.Name })
    </li>
}
</ul>

如果我运行它,它可以工作,但只加载一个图表(部分视图),即字典 RepDict 中的最后一个。我假设它将所有图表加载到相同的部分视图中,并且只有最后一个仍然存在。

如何将每个图表加载到局部视图的新实例?

或者我应该如何编辑我的代码以在一页上获得几个相同类型的图表但具有不同的数据。

非常感谢

4

1 回答 1

1

为图表的每个实例使用不同的名称来解决。

于 2015-06-05T03:28:51.947 回答