【发布时间】:2014-08-10 21:37:11
【问题描述】:
我的模型包含一个IEnumerable<SelectListItem>,视图包含一个DropDownListFor,除了在某些情况下我需要包含一个值为-1 的默认“选择选项”之外,它工作正常。
在控制器中:
model.Items = _context.SomeTable.Select(m => new SelectListItem()
{
Text = m.SomeName,
Value = m.SomeId
});
在视图中:
@Html.DropDownListFor(
w => Model.ItemId,
new SelectList(Model.Items, "Value", "Text", Model.ItemId),
new { @class = "form-control text-left" })
在控制器或视图之间,如何将以下内容添加为第一个选项并有条件地选择(如果 ItemId == -1)?
<option value="Select an Item">Select an Item</option>
由于确定当前是否选择选项的逻辑位于控制器中,因此我希望将其添加到控制器中 - 如果可能的话。或者,如果我可以在视图中添加<option ... 并在控制器将 -1 作为 ItemId 时被选中,那也可以。
【问题讨论】:
标签: c# asp.net-mvc