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

May*_*ank -1 c# asp.net asp.net-mvc razor asp.net-mvc-4

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

当我使用时@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" />
}
Run Code Online (Sandbox Code Playgroud)

Controller

public ActionResult EditView(ModelList model)
{
    return RedirectToAction("Index");
}
Run Code Online (Sandbox Code Playgroud)

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

Shr*_*ike 6

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

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