我在MVC,Razor中有以下代码:
- @Html.DropDownListFor(model => model.SelectedEvent,
new SelectList(Model.Events, "Id", "Name"))
我想为选择中的每个选项添加一个新属性,称为"描述",该属性应绑定到 Event.Description。
如何实现这一点?
我想避免创建一个单独的 Html 助手。这可能吗?
不幸的是,当前的DropDownListFor
实现不支持这一点。存在占用 html 属性IDictionary<string, Object>
的重载,但它们绑定到 select
元素,而不是其项,您可以在 MSDN 文档中进行验证。我认为如果不实现自定义帮助程序,您将无法在此处执行所需的操作。
查看几个自定义帮助程序,它们在此问题的答案中实现了类似的行为。