通过ediewmodel数据与ederodfor for失败以一对多关系失败
-
15-09-2020 - |
题
我有一个编辑器模板(视图/共享/编辑/ horder.ascx),它继承
System.Web.Mvc.ViewUserControl<CCOK2.Models.HORDER>
.
我的ViewModel具有一对多关系,我使用HTML.EDITERGOR来呈现多个HORDERS
<%: Html.EditorFor(model => model.PEOPLE.HORDERS, new {fred="hello"})%>
.
最终我想要做的是在下拉列表中的数据中传递,但是,暂时,我只是在尝试传递一个字符串“hello”
如果我在horder.ascx中嵌入以下内容
<%: ViewData.Count() %>
.
我得到“0”输出。任何持有ViewData的尝试都会失败。
但是,如果我使用单个项目使用editorfor,它可以按预期工作:我向我的ViewModel添加了前后,set是model.people.horders.first()那么<%:html.editor for(model=> model.firstorder ,新的{fred=“hello”})%>按预期传递你好。所以......在用一对多关系调用它时,有没有办法使用额外的数据?
编辑: 它已经建议在其他地方我使用edentorfor在foreach循环中针对个人守则使用。这是作品(即,附加的查看程序已正确传递),但我最终通过编辑器呈现的每个控件,具有相同的ID和名称而不是人.Fiffer,这是不可取的。
解决方案
经过很多搞乱,似乎是不可能这样做的:我认为框架中的一个错误。解决方法是在编辑器呼叫之前将其插入ViewData。
不隶属于 StackOverflow