从视图传递值到控制器使用DisplayFor
问题描述:
我想将模型的值从视图传递到控制器。从视图传递值到控制器使用DisplayFor
当我使用@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
。我该如何解决这个问题?
答
@Html.DisplayFor
只显示视图中的值。
如果你希望值回传给后上的控制器,那么你还需要一个@Html.HiddenFor
是什么类型'model.Name'? – 2014-11-04 15:20:58
in model.Name,model is a Model and model.Name is Model variable of Model(ModelList) – Mayank 2014-11-04 15:22:24
那么它是一个'string'吗? – 2014-11-04 15:22:54