1

(我在本文中参考了本教程)

我想使用 Html.EditorFor(或 Html.Editor)助手。

如果 UserControl 需要其他数据,则通过

...EditorFor(model => model.Album, new { Artists = Model.Artists, ... })

在 UserControl 中,它是通过ViewData[ stringKey ]访问的,即

... new SelectList(ViewData["Artists"] as IEnumerable, ...

对我来说,这有点可疑,因为我更喜欢强类型的 ViewModel来确保特定数据可用。

我现在有点卡住了,因为我不知道有一种“打字方式”可以找到,或者我应该按原样接受这种方式。

你是如何解决这个问题的?任何帮助表示赞赏!


华拉巴

4

1 回答 1

0

我可能会更改我的视图模型,这样我就不需要传递这些附加信息。例如,您可以制作包含艺术家集合的专辑。现在您所要做的就是:

<%: Html.EditorFor(model => model.Album) %>

在您的编辑器模板中:

<%: Html.DropDownListFor(x => x.SelectedArtist, new SelectList(Model.Artists)) %>
于 2010-12-13T12:16:21.983 回答