如何使日期字段@Html.Editor用于接收来自ViewBag的日期。
控制器
var searchDateBD = db.Sequence.ToList().Select(l => l.DateFlow).Max();
ViewBag.date = searchDateBD;
视图
@Html.EditorFor(model => model.Sequence.DateFlow,
ViewBag.date,
new { htmlAttributes = new { @class = "form-control input-lg" } })
以上由我开发的这种方式是不正确的。
如何使字段接收来自控制器视图包的日期
这里不需要ViewBag
。您可以在控制器操作中设置模型属性,并将模型对象传递到返回 View 的行中查看,如下所示:
model.Sequence.DateFlow = db.Sequence.Select(l => l.DateFlow).Max();
return View(model);
您也不需要通过调用ToList()
来具体化结果,而将Max
项保留在数据库服务器上进行计算。
在您看来,它会像:
@Html.EditorFor(model => model.Sequence.DateFlow,
new { htmlAttributes = new { @class = "form-control input-lg" } })
您可以使用属性@Value
覆盖该值:
htmlAttributes = new { @class = "form-control input-lg", @Value = ViewBag.date }
请注意,@Value
是用大写字母V
书写的。