(我在本文中引用this tutorial)
我想使用Html.EditorFor(或Html.Editor)助手。
如果UserControl需要其他数据,则会通过
传递 ...EditorFor(model => model.Album, new { Artists = Model.Artists, ... })
在UserControl中,可以通过 ViewData [ stringKey ] 访问它,即
... new SelectList(ViewData["Artists"] as IEnumerable, ...
对我来说这闻起来有点腥,因为我更喜欢强类型的ViewModel ,这可以确保特定的数据可用。
我现在有点陷入困境,因为我不知道有哪种“打字方式”可以找到,或者我应该按原样接受这种方式。
你是如何解决这个问题的?任何帮助表示赞赏!
LG
warappa
答案 0 :(得分:0)
我可能会更改我的视图模型,以便我不需要传递此附加信息。例如,你可以制作一张有艺术家收藏的专辑。现在你所要做的就是:
<%: Html.EditorFor(model => model.Album) %>
在你的编辑器模板中:
<%: Html.DropDownListFor(x => x.SelectedArtist, new SelectList(Model.Artists)) %>