2008-11-19 55 views
6

正如你所看到的herehere我不是asp.net MVC的SelectList的好朋友。
這次我想知道如何計算它中的項目。如果可能的項目不提供任何選項(items.count < 2),我想顯示標籤而不是下拉菜單。計數選擇項目(計數IEnumerable)

- 編輯 -

儘管威爾的答案很可能也工作,最簡單的方法去的是調用

.GetListItems().Count() 

這將禁用任何懶抓取你會,但因爲他們是無論如何,我會認爲這應該是一個問題。

+0

這看起來已經過時了。在MVC 1.0版中這是行不通的。 Intellisense表示SelectList仍然是IEnumerable,但GetListItems()方法不可用。 – 2009-09-11 13:47:41

+0

的確,這已經過時了。此外,我現在將Ienumerable本身傳遞給視圖並在現場創建SelectList。這讓我感覺更好,因爲控制器不應該因爲selectlist而煩惱,因爲這是一個特定於視圖的數據類型。 – 2009-09-14 12:59:08

回答

3

LINQ的擴展方法不具有用於IEnumerable的擴展方法稱爲計數()。 Count()是爲IEnumerable實現的,這是一個很大的區別。