将图表发送到控制器 asp mvc 5

Send chart to controller asp mvc 5

我在剃须刀视图中有以下代码

  <div class="row">
<div class="col-md-10">
    @Model.chartVM
</div>

我使用此 actionLink 将图表值发送到控制器

@Html.ActionLink("click", "DownloadPDF", "PDF", @Model.chartVM, new { @class = "displayPdf" })

将它取回控制器 (PDFController) 我正在使用

  public ActionResult DownloadPDF(Chart_Event ce){

         string str = ce.chartVM.GetHashCode().ToString();
    return View()

}

问题是控制器中 "ce" 的值保持为空,请问为什么?

这是我的模特

    public class Chart_Event
    {

        public Full fullVM { get; set; }
        public Highcharts chartVM { get; set; }
        public HelpModel helpVM { get; set; }
    }

试试这个,希望它能奏效。

@Html.ActionLink("click", "DownloadPDF", "PDF", new { @class = "displayPdf",cv=@Model.chartVM })
<div class="col-md-10">
    @Model.chartVM
</div>

您不能 post 像这样的复杂对象,如果这是您想要实现的目标。

都不是这样的:

@Html.ActionLink("click", "DownloadPDF", "PDF", @Model.chartVM, new { @class = "displayPdf" })

如果您的 Highcharts chartVM 属性已填充,您可以像这样向您的控制器提供隐藏输入和 POST 它们。

@using(Html.BeginForm())
{
    ......
    <div class="col-md-10">
        @Html.HiddenFor(x => x.chartVM.PropertyName)
    </div>
    ......
    <input type="submit" value="Submit" />
}