我正在尝试学习DropDownListFor的语法。
在for
循环中给出以下内容:
@Html.DropDownListFor(
model => model.SalutationID, Model.AvailableSalutations.Select(option => new SelectListItem
{
Selected = (option.ID == staff.SalutationID),
Text = option.Desc.ToString(),
Value = option.ID.ToString()
}
),
"Choose...")
...并且给定staff.SalutationID确实回显正确的值(例如,当我只使用@Html.ValueFor(model => staff.SalutationID)
时),为什么在我的循环中回显的每个下拉列表默认为"选择... "而不是Selected
选项?
答案 0 :(得分:0)
决定下拉列表中所选选项的内容是Html.DropDownListFor
中第一个参数中lambda指定的model属性的值。在您的情况下model => model.SalutationID
。
验证model.SalutationID
是否具有模型中的预期值。如果没有,请在渲染视图之前在控制器的操作中指定它。