使用ActionLink将模型从视图传递到控制器

本文关键字:控制器 视图 ActionLink 模型 使用 | 更新日期: 2023-09-27 18:13:14

使用actionLink将模型数据从视图传递到控制器的最佳方法是什么?实际上我的动作链接是下载链接,我想传递报告模型,因为它包含数据信息。

   private void DownloadReport(ReportModel rptModel)
   {
       // want to recieve report model here.
     // to do so.
   }

使用ActionLink将模型从视图传递到控制器

ActionLink最终只是一个锚定元素。

应该使用带有提交表单的锚元素的表单。

相应的控制器方法将接受您的ReportModel

同样可以使用Ajax post方法。

例如在你的视图中:-

<script type="text/javascript">
var rptModel = {
    val1: "val1",
    ....
};
$.ajax({
    url: '/NameOfController/DownloadReport,
    type: 'POST',
    data: JSON.stringify(rptModel),
    contentType: 'application/json; charset=utf-8',
    success: function (data.success) {
        alert(data);
    },
    error: function () {
        alert("error");
    }
});
</script>

无论你从视图传递什么你都会在你的动作方法中得到