我有一个关于带有选定值的DropDownList的问题。
@Html.DropDownListFor(m => m.weekForEachDayService[6].serviceId, new SelectList (ViewBag.DayService, "Value", "Text"))
正如您所看到的,我有一个与周WeekForEachService表相关的服务。
当我运行它时,它从不在SelectList中使用serviceId。
@Html.DropDownListFor(m => m.weekForEachDayService[6].serviceId, new SelectList (ViewBag.DayService, "Value", "Text",m => m.weekForEachDayService[6].serviceId))
我也试过这样的东西,但后来我得到错误信息无法将类型lambda转换为对象。通常当我使用DropDownList时,它会自动选择正确的值,但是我认为有必要将所选的值放在列表中。
感谢您的帮助
答案 0 :(得分:2)
由于您使用的lambda表达式很复杂且涉及数组索引器,因此DropDownListFor
帮助程序无法确定所选值。它只适用于简单的属性访问lambda表达式。
在这种情况下,您可以将选定的值作为第4个参数传递给SelectList
构造函数,如下所示:
@Html.DropDownListFor(
m => m.weekForEachDayService[6].serviceId,
new SelectList(
ViewBag.DayService,
"Value",
"Text",
Model.weekForEachDayService[6].serviceId
)
)