我有一個觀點,那就是從System.Web.Mvc.ViewPage<P>
繼承。MVC不同實體的下拉列表
P型有C
類型,即屬性,P
可能是:
class P
{
public string Name { get; set; }
public C OtherData { get; set; }
}
有問題的視圖是用於創建新P
,因此我想創建的所有下拉列表可用C
's。
所以下拉可能是:
- C1
- C2
- C3
- C4
我試過在C
的創建List<SelectListItem>
對象我控制器,然後使用ViewData
將它們傳遞給視圖,但這不起作用,因爲當我嘗試su bmit我得到異常:
System.InvalidOperationException: There is no ViewData item of type 'IEnumerable<SelectListItem>' that has the key C.
所以我的問題是,如何創建C
對象的列表在我看來,從P
類型繼承來顯示。對象列表是從數據庫中提取的,因此我不能直接將選項硬編碼到視圖中。
我是否需要創建另一個將兩種類型結合在一起的模型類型?
謝謝摩根,我在哪裏添加這個元數據類?以前從未見過! – AndrewC 2011-02-03 20:45:17