2011-11-16 60 views
0
@this.Model.ActiveApplicationId 
@this.Html.DropDownList("applications", new SelectList(this.Model.AllApplications, "ApplicationId", "Title", this.Model.ActiveApplicationId)) 

呈現...@ this.Html.DropDownList()不會選擇默認爲我

17 
<select id="applications"> 
    <option value="16">app 16</option> 
    <option value="17">app 17</option> 
</select 

沒有selected="selected" ATTR 2號選項,應該有。所以,默認情況下,由於沒有選擇它們,所以選擇第一個。

我錯過了什麼?謝謝!

+0

'Model.ActiveApplicationId'和'AllApplications [0] .ApplicationId'類型是什麼? –

+1

這是什麼?它們是多餘的,不需要的。 –

+0

@DanDaviesBrackett - 都是int的。 –

回答

2

爲什麼不使用強類型的版本? MVC不尊重SelectList的Selected值參數。

@Html.DropDownListFor(m => m, 
    new SelectList(Model.AllApplications, "ApplicationId", "Title")) 
+0

謝謝!稍作調整,使其工作,'m => m.ActiveApplicationId' –

1

DropDown Helper的第二個參數需要一個SelectListItem類型爲IEnumerable的對象,但是您傳遞了一個SelectList類型的對象。

+1

SelectList是SelectListItem的IEnumerable –