将ViewModel值从GET ActionResult保留到Post ActionResult的最佳方法是什么?

时间:2019-09-20 00:45:46

标签: asp.net-mvc

鉴于您有一个ActionResult表单和一个Post ActionResult表单,并且您有一个不需要在视图中显示的值。

    public ActionResult Form()
    {
        FormModel formModel = new FormModel();
        formModel.UploadRecordID = 99;
        return View(formModel);
    }

    [HttpPost]
    public ActionResult Form(FormModel formModel)
    {
        long recordID = formModel.UploadRecordID;
    }

保留该价值的最佳方法是什么?

一种方法是,您可以在视图中创建一个隐藏字段。

    @Html.HiddenFor(model => model.UploadRecordID);

这是最好的方法吗?您还有其他方法可以这样做吗,优点和缺点是什么?

1 个答案:

答案 0 :(得分:0)

我认为您可以像这样使用TempData:

TempData["formModel"] = formModel;

以及后续操作:

FormModel formModel = TempData["formModel"];
相关问题