2010-08-01 110 views
2

我收到錯誤後後,當我在我的MVC網站使用下拉菜單,代碼如下asp.net的MVC下拉問題

ViewData["JobSite_JobCategories1"] = new SelectList(context.JobSite_JobCategories, "Id", "Category", null); 

<%= Html.DropDownList("JobCategory", ((IEnumerable<SelectListItem>)ViewData["JobSite_JobCategories1"]))%> 
<%= Html.ValidationMessageFor(model => model.JobCategory) %> 

驗證不工作,也經過我趕上錯誤我再次使用selectlist填充viewdata [「JobSite_JobCategories1」],但仍然出現錯誤

沒有包含'JobCategory'鍵的'IEnumerable'類型的ViewData項目。

請任何一個建議我解決這個問題,任何文章,樣品,鏈​​接。

+0

,請向我們提供您的操作代碼,並解釋其發佈你是指(初始加載或提交視圖?) – Tahbaza 2010-08-01 12:48:34

+0

http://stackoverflow.com/questions/1012924/there-is-no-viewdata-item-with-the-key-tasktypes-of-type-ienumerableselectlist – AlexanderMP 2010-08-01 12:51:07

+0

and in一般來說,你可能會在這裏找到你的答案: http://stackoverflow.com/search?q=There+is+no+ViewData+item+of+typ e – AlexanderMP 2010-08-01 12:52:22

回答

2

一切看起來都是正確的。

您正確地在這裏建設SelectList

ViewData["JobSite_JobCategories1"] = new SelectList(context.JobSite_JobCategories, "Id", "Category", null); 

我不知道爲什麼你不只是它鑄造於它是在這裏什麼,一個SelectList

<%= Html.DropDownList("JobCategory", (SelectList)(ViewData["JobSite_JobCategories1"]))%> 

因故不使用DropDownListFor來構建它?例如:

<%= Html.DropDownList(m => m.JobCategory, (SelectList)(ViewData["JobSite_JobCategories1"]))%> 

我也張貼了這個問題了一段時間後,可能會感興趣供您閱讀:

Best way of implementing DropDownList in ASP.NET MVC 2?