使用函数作为.NETMVC 3.0中选择列表中的dataValueField

本文关键字:选择 列表 dataValueField 函数 NETMVC | 更新日期: 2023-09-27 18:22:30

我在一个单独的dll中有一个对象,名为"Program",我在站点项目中添加了一个扩展方法,名为EncProgramId,所以MyProgram.EncProgramId()返回一个值,现在我想使用Html.DropDownList来使用该扩展方法来获取选项的值:代码:

这不起作用:出现以下错误:DataBinding:"EncProgramId()"不是有效的索引表达式。

@Html.DropDownList("ddlAcademicProgram", new SelectList(Model.AcademicPrograms, "EncProgramId()", "Name"), "Select all")

这也不起作用。

@Html.DropDownList("ddlAcademicProgram", new SelectList(Model.AcademicPrograms, "EncProgramId", "Name"), "Select all")

任何帮助都将不胜感激。

使用函数作为.NETMVC 3.0中选择列表中的dataValueField

您似乎误解了SelectList构造函数的"Code"参数。这是AcademicProgram中要用于下拉列表中选项值的属性的名称。

为什么您不能从学术程序中指定属性的名称,以供SelectList用作其代码值?