2009-10-13 46 views
4

到目前爲止,我們可以使用Html.EditorFor()爲數據類型動態地呈現適當的模板 - 例如,字符串,整型或自定義類型,例如「地址」。使用EditorFor <>渲染下拉列表

現在我想使用EditorFor()來渲染一個'Parent'字段。我需要一個包含每一行的下拉列表,並且用戶從此下拉列表中選擇一個父項。

的「父」模板先後獲得了「PARENTID」,但對於行的名稱和ID的,與填充列表框?

這些應該從哪裏來?

我可以將數據訪問邏輯放在模板中,但這會違反問題的分離。

我可以創建呈現列表,但不會這也打破關注點分離,因爲HtmlHelpers應該只做UI的東西,而不是數據訪問的的HtmlHelper?

任何想法?

回答

2

您可以嘗試一種MVVM方法,也許?您的ViewModel將包含您需要渲染下拉菜單的所有數據,以及一個「編輯」模型,用於在POST上存儲用戶輸入,我猜這只是一個ID號。