使用DisplayFor将值从视图传递到控制器

时间:2014-11-04 15:18:02

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

我想将模型的值从视图传递给控制器​​。

当我使用@Html.TextBoxFor时,值会转到控制器,但当我使用@Html.DisplayFor时,控制器中的值为null

View.cshtml

@using (Html.BeginForm("EditView", "Home"))
{
    @Html.TextBoxFor(model => model.Name) // 1st way

    @Html.DisplayFor(model => model.Name) // 2nd way

    <input type="submit" value="Ok !" class="btn btn-success btn-sm" />
}

Controller

public ActionResult EditView(ModelList model)
{
    return RedirectToAction("Index");
}

基本上,控制器第一次获得值;但第二次,它得到null。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:6)

@Html.DisplayFor只显示视图中的值。

如果您希望在发布时将值传回控制器,那么您还需要@Html.HiddenFor