2012-02-03 35 views
0

我有所謂的「程序」一個單獨的DLL的對象,我加入該網站的項目稱爲EncProgramId擴展方法,所以MyProgram.EncProgramId()返回值,現在我想要一個使用Html.DropDownList使用該擴展方法的值的選項:代碼:使用函數作爲dataValueField在.NET MVC選擇列表3.0

這不會工作:與以下錯誤:DataBinding:'EncProgramId()'不是有效的索引表達式。

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

這也行不通。

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

任何幫助將不勝感激。

回答

1

看起來你錯誤地理解了SelectList構造函數的「Code」參數。這是您想要用於下拉列表中選項值的AcademicProgram屬性的名稱。

爲什麼你不只是從學術程序選擇列表的使用,因爲它的代碼值指定屬性的名稱?