如何使日期字段@Html.编辑器用于来自 ViewBag 的接收日期



如何使日期字段@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书写的。

最新更新