单页RAZOR MVC4上的多个图表

时间:2013-09-28 23:34:12

标签: c# asp.net-mvc-4 razor highcharts

我想在我的页面上显示2个图表;

我尝试应用此答案的代码:answer

但页面仅显示添加到列表中的最后一个图表

这是观点:

@model Project.Models.TableauDeBord
@using DotNet.Highcharts


@foreach (Highcharts chart in Model.Charts)
{

        @(chart)

}




@section Scripts {
    @Scripts.Render("~/bundles/HighChart")
}

和行动方法:

public ActionResult TableauDeBord()

        {

            Highcharts g1 = new Highcharts("chart");
            g1 = Calcul_Global();
            Highcharts g2 = new Highcharts("chart");
            g2 = TB_Responsable();

            TableauDeBord model = new TableauDeBord(); 
            model.Charts = new List<Highcharts>();


            model.Charts.Add(g1);
           // model.Charts.Add(g2);

                return View(model);

        }

任何帮助请!

2 个答案:

答案 0 :(得分:2)

从您的代码中注释掉// model.Charts.Add(g2);所以在我看来,只有一个图表被添加到模型中

确保图表名称在生成每个图表的方法中是唯一的,即。 Highcharts chart = new Highcharts(“chart2”)

我想在你的情况下生成图表的方法都读取Highcharts chart = new Highcharts(“chart”)

答案 1 :(得分:0)

您似乎需要表或列表来显示多个结果:

<ul>
@foreach (Highcharts chart in Model.Charts)
{

       <li> @(chart)</li>

}
</ul>

//Or
<table>
@foreach (Highcharts chart in Model.Charts)
{

       <tr> <td>@(chart)</td></tr>

}
</table>